info-mac@uw-beaver (info-mac) (11/07/84)
From: Peter Homeier <homeier@AEROSPACE> Now that there are some languages appearing for programming the Mac, it seems to be about time to start comparing them. There have appeared advertisements for lots of C compilers, MacPascal, FORTH, and BASIC. I would like to ask those who have access to these or other languages (especially assembler!) to try coding and running the Sieve of Eratosthenes prime number program that appeared in BYTE. Please send the results to me, and I will compile them and publish them to the net. The BYTE article is "Eratosthenes Revisited: Once More through the Sieve", by Jim Gilbreath and Gary Gilbreath, which appeared in the January 1983 issue, page 283. Of course, just this one benchmark has a limited significance, and benchmark speed is only one of many significant qualities of a language. Software engineering principles of clear, structured design and modifiable, maintainable code may often be more important. However, speed is also valuable, and it is at least something which is relatively easy to measure. Peter Homeier Arpanet: homeier@aerospace
info-mac@uw-beaver.UUCP (11/11/84)
From: <Devon@MIT-MC.ARPA> I have been using the [notoriously awful] Whitesmith C compiler available from "software toolworks" or some similar name. It does work, and there are header files defining all the data structures, and interface files so you can make all the ROM calls. I haven't found any serious bugs, but code bloat is amazing. One reason is that Apple's linker is a crock that doesn't have have the concept of scanning a library! Instead it blithely loads everything contained in each library file (which you must specify yourself -- blech!) regardless of whether it is called for or not. Another reason for bloated code: increment a byte in memory can be done in a single instruction, but they load the byte into a register, extend it to a word, extend that to a long, add one, and then store the low 8 bits of the long back into memory.
info-mac@uw-beaver (info-mac) (11/16/84)
From: olson@harvard.ARPA (Eric Olson) I think "notoriously awful" is a little harsh as a description for Whitesmith's C available from SoftWorks. Although the code may be somewhat bloated (I haven't checked this thoroughly yet), the developement system is extremely complete, including C compiler and Apple's ASM, LINK, EDIT, and RMAKER. Since it has a resource compiler, it is at leat possible to create a Mac-style application in correct Mac STYLE (i.e., without any resources in-line in the code). I consider this VERY important. This C runs on a 128K Mac with (preferably) 2 drives (but of course would work with one). The turn-around time for Compile/Link/Rmaker is about 5-10 minutes. My point is this: It is a REAL system that can generate REAL Mac Applications on 1 (count 'em -- 1) Mac and nothing else. In regards to the linker: It's true, there is no function extractor (indeed, no librarian at all), but they supply the source for all but the core C libraries, so you can take what you need and generate your own libraries. In fact, just by splitting up the libraries into smaller chunks (right now they are OS, Toolbox, and Quickdraw, C .asm sources and C .c sources) a lot of this problem goes away. So let's be fair: it works, it's not too slow, and its STANDALONE! In my book, that's pretty darn good in MacIntosh world. -Eric