Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: $Revision: 1.6.2.16 $; site inmet.UUCP
Path: utzoo!linus!decvax!cca!inmet!bhyde
From: bhyde@inmet.UUCP
Newsgroups: net.micro.mac
Subject: Re: Megamax 2.1 "in the mail"
Message-ID: <26700028@inmet.UUCP>
Date: Thu, 22-Aug-85 11:12:00 EDT
Article-I.D.: inmet.26700028
Posted: Thu Aug 22 11:12:00 1985
Date-Received: Sun, 25-Aug-85 12:03:34 EDT
References: <1041@sdcsvax.UUCP>
Lines: 43
Nf-ID: #R:sdcsvax:-104100:inmet:26700028:000:2233
Nf-From: inmet!bhyde    Aug 22 11:12:00 1985


About the Megamax C compiler's new release.

I have recieved both my 2.1 update, and my 2.1 update to the update.  The
initial 2.1 update was a terrible mistake, I gather they didn't ship too
many copies before they discovered this.  In my case the problem was
compounded by recieving it the same day as my Mac. came back from service
will a new (and bad) disk drive installed.  So the two events conspired to
waste about 40hours of my time.  The sadest part is that while I was
very happy with Megamax up until then I'm not very nervous.

The new release is wonderful.  I run a one drive 128K Mac.  I build real
programs with it.  The linker is much faster, but you might not notice 
since the linker is still the slowest step and takes long enough for
you to decide to stand up and stretch, and that's too long for my weak
short term memory to remember what I was doing.

The best thing about the new release is the editor.  It is fast, it is
coupled in very nicely with the compiler.  The typical compile/edit loop
is automatic, so you edit, hit compile, and (i'd guess) 20sec. latter
the source and error listing reopen upon your screen.

There is now a very powerful batch script facility.  I haven't used it
yet but the examples are impressive.  Wild cards, for example
"foreach file ( *.c ) ..."  batch also supports dialog query during the
execution.  This, coupled with editor and minifinder, might allow you
to banish the finder forever from software development. 

I have used the compiler to build menu def proc's, picture editors,
controls, filters that wrap around standard control def procs, and
to write a simple editor that's based entirely on the dialog handler.

The C runtime model isn't very compatable with pascal/Mac's runtime model.
The compiler provides a very easy way to allow the creation of routines
who's call sites will be pascal like, but it doesn't let you call those
from C.  So you can write a replacement for StdRect, but you can't call
StdRect without dropping into assembler.

It has bugs, but they aren't many.  The new release is much more carefule
about the issues around boolean values ( which are a mess).

I like it, I recomend it, I've never tried any alternatives.
ben hyde, cambridge.