Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site rochester.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!whuxl!whuxlm!harpo!decvax!genrad!panda!talcott!harvard!seismo!rochester!emil From: emil@rochester.UUCP Newsgroups: net.micro.mac Subject: Consulair Mac C vs. Megamax C Message-ID: <7606@rochester.UUCP> Date: Tue, 26-Mar-85 13:48:12 EST Article-I.D.: rocheste.7606 Posted: Tue Mar 26 13:48:12 1985 Date-Received: Thu, 28-Mar-85 02:38:48 EST Sender: emil@rochester.UUCP Organization: U. of Rochester, CS Dept. Lines: 107 From: Emil Rainero >I would appreciate most >to hear from someone who has tried BOTH of these compilers. But in lieu of >some generalist comments, anyone having tried and liked either would have >my undying gratitude for helpful comments. > >THINGS TO CONSIDER: > > 1 - Price > 2 - Convenience of using the product. (i.e. how closely does it > conform to both the standard Mac interface.) > 3 - How closely does the product come to K & R specifications. > 4 - Does the product have good debugging tools (symbolic debugger, etc.) 5 - What about the linker and librarians. > 6 - Can all toolbox routines be accessed? > 7 - What quality of code generation does the compiler give? > I've used both. I started with Mac C about three months ago and megamax C about two weeks ago. What follows are my very biased opinions. Consulair Mac C Disadvantages: 1. No debugger (all C compilers share this misfeature) 2. No sfputfile/sfgetfile/create/fswrite/fsread To be fair, the assembler knows about these toolbox calls and appropriate library routines could be written. 3. resource maker is very minimal (all on the mac are) 4. no floating point 5. no register variables 6. My biggest complaint is two pass compiling. By this I mean producing an assembly language listing and then assembling it. Just to give you an idea of how time consuming it is, here is how a normal compile goes. From the editor we invoke the exec program on a file that says what to compile/assemble/link. The normal 15 second delay before we even enter the compiler. Now about 15 more seconds to do the compile and to write an assembly language listing to disk. From the compiler we get zapped into the assembler (15 more seconds) wich then reads in the assembly language listing and takes about 15 more seconds to assemble and write out a rel file of our code. Now another 15 seconds to invoke the linker and another 15 seconds to link out files and another 15 seconds to get back to the editor. By the way, then linker is very fast and stupid, so entire libraries get loaded with your code. Megamax C Disadvantages: Megamax C shares some of the problems of Consulair. 1. No debugger (all C compilers share this misfeature) 3. resource maker is very minimal (all on the mac are) 6. Takes about as long as consulair to get a running C program. Compiling is not much faster and the linker is painfully slow for a generic macintosh program. 7. all lower case toolbox (while convertible to mixed) is not standard. Consulair Mac C Advantages: 1. register based calling should be faster than Megamax C 2. ditto for parameter accessing 3. having the 6800 MDS is very important for any serious mac development. 4. mixed upper and lower case toolbox is Apple Standard Megamax C Advantages: 1. full toolbox available 2. mac SANE floating point 3. object code improver (haven't tried it) 4. register variables 5. code segmenting FINAL COMMENTS I prefer Megamax C by a very small margin. Having the full toolbox and floating point is crucial for my work. Both have reasonable mac user interfaces, assembly level macsbug debugger, minimal rmaker, inline assembly code, edit, batching. I think the "Bat out of hell compiling" of Megamax C is not an issue if you are doing mac development as opposed to standard C development. I didn't notice and real difference in total turnaround time using either system. My biggest problem with any of the C compilers is the extra hassles converting between Pascal and C strings. A desk accessory demo would be nice. If Consulair Mac C would come out with a floating point version with segmentation and full toolbox support I think the scales will tip in their favor. Emil Rainero UUCP: (..!{allegra, decvax, seismo}!rochester!emil) ARPA: emil@rochester.arpa USmail: Emil Rainero, Dept. of Comp. Sci., U. of Rochester, NY 14627. Phone: Office: (716) 275-5365 Home: (716) 424-5016