CELEX@CELEX.KUN.NL (CELEX -- Centre for Lexical Information) (08/23/90)
Thanks to everyone who replied to my problem with the slow screen I/O with Icon V8. Richard wrote: > Gcc is the GNU C compiler, and it produces much better code, in many > instances, than the native compilers that come on various systems. > I just wondered whether there was a VAX version. Sorry Richard, I don't know if one is available. > I do not use VMS, but I would be curious to know if anyone sends you > a solution to your problem with Icon version 8. I might be tempted > to try version 7.5 to see if it works as fast as 8, since 7.5 is very > close syntactically to version 8. Version 8 mainly represents a change > in the internal handling of tables and sets. Version 8 also allows > memory monitoring. We had the same problem with v. 7.5, so we stayed with v.6 (I guess we should have reported this problem then). > You may find that, despite slower I/O, version 8 saves you so much > space that it's worth it. The space savings will show up in programs > that use large sets and tables. > Please let me know what you do. I am curious. I will. Chris wrote: > Recently someone mentioned something about Icon V8 being slower than V6 on a > microvax in regards to screen IO. This sounds like a VMS system. I've used > in primarily on VAX/VMS, but also a little on a VAX 780 running Berkeley Unix > 4.3 and the screen IO behaviour difference is quite noticable. > I think it's because the VMS version is trying to emulate the data stream > concept of unix. This is why the unix redirectors <, >, and >> can be used > with VMS ICON where VAX FORTRAN doesn't handle them automatically. Therefore, > I'm not sure that we could or should ever expect speedy screen IO under VMS. > I really like the redirectors and wouldn't want to loose them. Eventually, > I'd like to see the PIPE | come to VMS ICON as well. Then we could issue > commands like ICONX PROG1 <DATA.LIS | PROG2 | PROG3 >FILTERED.LIS where > PROG1, PROG2, and PROG3 are icon executables. From this I conclude that you think that above v6 the fast screen I/O is sacrificed for the possibility of using redirectors. I can understand you don't want to loose them, but we don't want to loose the fast screen I/O. Wouldn't it be great, if your theory is right, to introduce 2 Icon versions to keep both of us happy? And finally Ken wrote: > The Icon interpreter is a C program that uses C's fwrite() to implement > the write() function. Do other C programs have these problems under VMS? No, other (well, we only tried one) C-programs don't have that problem. We compared the screen-output of the following 2 programs: The C-version: --- #include stdio main() { int i; char s[20] = "Hello world.\n"; FILE term; term = fopen("SYS$OUTPUT","w"); for (i=0; i<100; i++) fwrite(s,strlen(s),1,term); } --- The Icon-version: --- procedure main() s := "Hello world." every i := 1 to 100 do write(s) end --- The Icon-output was considerably slower. Is the problem somewhere else? Marcel Bingley CELEX Nijmegen University - The Netherlands.
CELEX@CELEX.KUN.NL (CELEX -- Centre for Lexical Information) (08/23/90)
In addition to my previous message: as Chris already guessed, we run indeed VAX/VMS (version 5.1-B). Marcel Bingley CELEX Nijmegen University - The Netherlands
schwartz@groucho.cs.psu.edu (Scott Schwartz) (08/23/90)
Marcel Bingley writes:
Sorry Richard, I don't know if one is available.
There is. prep.ai.mit.edu has gcc-vms.tar in pub/gnu.