rgoodman@cit-vax.UUCP (04/24/87)
I constantly see the question, "I'm buying a C compiler, which do you people recommend" being asked, but I haven't seen the definitive answer. Perhaps there is none. I only know that I bought Lattice C, and it was a nasty mistake/lesson that I'd like to avoid again. I need a good C compiler, and from the discussion it seems to be down to Megamax and Mark Williams. So what are the advantages, or are they both great? Let me rag on Lattice C so you know the kind of things that bother me. Lattice C compiles very slowly. To compile 12 C programs of about 8K each takes about 6minutes/program. Then another 8 minutes to link them together. Yes, that's almost 1 1/2 hours for a complete recompile! This is with the compiler/linker on a RamDisk. Lattice C does not support some VDI/AES commands such as vrq_* and vsm_*. If you divide by a constant power of 2 it replaces it with a shift (>>n) where n is sporatically incorrect! From what I gather in the benchmarks (sorry I don't remember exactly, otherwise I might not be asking for this comparison...oh I never know what things I need to save from this newsgroup, can't save everything) it compiles C source into unusually large binaries that run slower than other C's. What a winning product! To be fair, the Lattice C book is nice. Thanks. Ron Goodman -- rgoodman@cit-vax.caltech.edu _______ _________ _________ | rgoodman@cit-vax.bitnet / \#/ \#/ | Pasadena rgoodman@cit-vax.uucp |alifornia |nstitute |echnology | California \_______ ___/#\___ of | | U. S. A.
pes@bath63.ux63.bath.ac.uk (Paul Smee) (04/27/87)
Far as speed goes, are you falling into the short/long trap? Lattice C takes 'int' to mean 'long int', while a lot of the other compilers take 'int' to mean 'short int'. My experience is that the times are reasonable if you're careful to *say* short when you want short. The divide by shifting bug was documented when I got my release -- not as nice as being fixed, of course, but... Far as the rest goes, I just saw version 3.04 at the Atari show in London over the weekend. It is supposed to be improved (including much faster linking), better editor, MAKE included, a 'resource editor' included, ... They said I could upgrade by old version for 35 pounds by returning my original disks and registration card. (Which probably means 35 dollars in the States.) When I've got my upgrade, I'll let you know about it, unless someone more C-proficient does it first...
pes@bath63.ux63.bath.ac.uk (Paul Smee) (04/27/87)
Just remembered, I forgot the most important part (for me, anyway). Lattice C version 3.04 (now renamed something like Lattice C ST Development Package, or some such) is also supposed to contain a symbolic debugger. At last...