Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!pasteur!agate!ig!uwmcsd1!marque!gryphon!crash!pnet01!haitex From: haitex@pnet01.cts.com (Wade Bickel) Newsgroups: comp.sys.amiga Subject: Re: Anyone seen a good Amiga Pascal lately ? Why not Modula-2? Message-ID: <2605@crash.cts.com> Date: 1 Mar 88 14:56:16 GMT Sender: news@crash.cts.com Organization: People-Net [pnet01], El Cajon CA Lines: 147 ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) writes: > Please enable your SMILEY_FACE bit while reading this posting. > >In article <405@csvax.liv.ac.uk> sqrkl@csvax.liv.ac.uk writes: >>Has anyone seen a GOOD Pascal compiler for the Amiga yet ? >> > There is no such thing as a GOOD Pascal compiler. This is largely >because, while C compilers are designed to generate code, Pascal compilers >are designed to generate error messages. > > ............. > > Because all the Real Programmers are on the Amiga, and Real >Programmers use C or assembly. Strong typing is for people with weak >memories, you know... - - - - - - - - - - - - - - - - - - - - - - Leo, have you tried Benchmark Modula-2? You could ingore the type checking if you like. I find it and the robust error reporting quite useful. I use Benchmark Modula-2. It has advantages and disadvantages over C. Listing the assets/liabilities of each C: + Established high level (supposedly :^)) language for the Amiga. Most source is currently in C. + Generates intermediate assembly file (MANX). + Pre-initialization of data. + Register specification. + Symbolic Debugger exists (MANX). + Manx is a "large" (relatively speaking) company. I assume Lattice is as well. - C compilers are buggy. When I first got Manx (v3.20a) it was buggy and Manx was unresponsive to the problem. It was over a month before any help was provided, and the patches supplied were incomplete. As far as I know there are still problems. I see Manx and Lattice bug reports regularly. There are hundreds of Benchmark user's, ever seen a Benchmark bug report? - Both C compilers are significantly more expensive than their Modula-2 counterparts. - Available C compilers are slow. M2: (Benchmark) + Integrated Development Environment. This makes using Benchmark extremely easy. From the editor (modified gnu-EMACs) just hit F2 to compile the current buffer, F3 to link, and F4 to execute the file (directly from the editor). If after compiling a buffer errors were found, F1 can be used to step through them, and the system descibes the errors. Every aspect of the Dev. Environment is good (though of course there is always room for improvement). + Compilation Speed. Benchmark is (as best I can compare) 8 times faster than MANX C. My test was compilation of the program "ShowILBM" under both, as this was a direct translation from C to M2. (I don't have Lattice). + Seperate compilation is a feature of M2 at the language level. Effectively, this combine with the above features means the wait between edit and run can usually be held to under 20 seconds. Also, M2 will not allow corrupt linkages to occure (important if you use seperate compilation). + Excellent Documentation. Benchmark was implemented entirely by Leon Frenkel. It is not a port (as I believe are both Cs). The documentation was written by the compiler author, and it shows. It is very complete and uniform. + Nested comments are allowed in M2. I find this very useful. + M2 includes a statement called "WITH" which supports record (structure) access. As far as I can tell no equivalent to this statement exists in C (as avail- able on the Amiga). This statement leads to both more readable (in terms of context) source, and more efficeint code. + No Bugs. In the last 6 months Benchmark has never Guru'd on me. As far as I (or anyone I've spoken with) can tell, this seems to be true. + Strong Types. M2 uses strong type checking. This makes the language easier to learn and debug. + Readablility. M2 is much more readable than C. This is of value to the novices and group efforts. + Benchmark includes a large number of examples. + Benchmark is considerably less expensive than either Manx or Lattice C. - Problems between Oxxi and Leon Frenkel. At one time Leon had planned to publish Benchmark through Oxxi. In the Fall there was a falling out between them. Since that time Oxxi has been selling Benchmark without Leon's consent (the Beta-test version with a draft manual). Leon is now releasing the "release" version (this month) and OXXI claims to have an update too. Benchmark seems to put out code that is at least as good as Manx-C. I would like to see good comparison. Hopefully we'll see a Benchmark symbolic debugger by Summer? Several new "add-ons" are soon to be released. In my opinion Leo, it is not so much the language as the implementation that makes the difference. Benchmark is the best piece of software I've seen for the Amiga. As far as I can tell there is nothing you can do in C you can't do in M2 (except assign a "register variable"). Use C if you wish, but Benchmark is worth looking into :^). Thanks, Wade. PS: I am a beta-tester for Benchmark, which means I got my copy for free, I was to evaluate it for my work (Southern Technologies). I also got my copy of Manx-C for free through Southern, along with TDI M2 (which I would not use). I have no financial association with Benchmark at all. PPS: Any Benchmark user's interested in forming a users' group please contact me via E-Mail (see my .sig). UUCP: {cbosgd, hplabs!hp-sdd, sdcsvax, nosc}!crash!pnet01!haitex ARPA: crash!pnet01!haitex@nosc.mil INET: haitex@pnet01.CTS.COM