BHUBER@ECLA.USC.EDU (09/19/87)
Listed below are benchmark data for three Apple GS Pascal compilers. The application is one which reads an Appleworks AWP text file from disk, does some processing and reformatting based on table lookups, and then writes out an ASCII text file for use by commercial typesetting equipment. TML TML/APW Orca Orca Pascal Pascal Pascal Pascal (no-optimize) (optimized) ------------------------------------------------------------------------- program source size 440 440 441 441 (lines of code) compilation time 0:08 0:16 0:27 1:20 (minutes:seconds) link-edit time n/a 0:36 0:29 0:27 (minutes:seconds) resulting code file S16 EXE EXE EXE filetype resulting code file 60 48 60 53 size (blocks) input data file size (characters) 145,715 145,715 145,715 145,715 (lines) 2832 2832 2832 2832 execution time 33:52 33:57 19:20 18:11 (minutes:seconds) operating desktop desktop text text environment (forced) (forced) mode mode Application description: Other than enumerated types, pointers, random file access, and records, just about every other standard Pascal construct is used in the source code. This particular application does not utilize the mouse or any explicit desktop or TOOL functions. A kind of "plain vanilla Pascal" program. Comments: All of the above are running on a stock II-GS with 1.5 MB ram (AE card) and SCSI hard disks. Difference in source code size is related to Orca needing compiler directive(s) in the source code above the 'program' line. Identical code between the two with exception of some trivial syntax and semantics changes (input file type definitions are different and the 'otherwise' and 'halt' statements are slightly different). TML has an 'inc()' and 'dec()' procedure which was utilized in ported over version in quicksort routine and in a binary tree table lookup procedure; inc(x) is the same as x := x + 1; etc.; inference being that it runs quicker. Otherwise: identical source code. I had some difficulty with "LIB" library file conflicts by having both Orca Pascal and TML Pascal libraries on the hard disk (PREFIX 2/) simultaneously; problem resolved by temporarily changing the filetype of the opposing library file during link-edit phase. I don't like TML forcing all applications to run on the desktop. Conclusion: I prefer Orcal Pascal, not only for the obvious based on the above data, but also because it appears to be much more in compliance with the ANS Pascal standard, at least as I understand it. I have been able to compile some TML programs which "violate" type checking in wierd ways. Sometimes a person may want to do this, but I generally do not (use C code when that is important). My experience with both vendors relative to support has been superlative; Byte Works (APW shell creator and maker of Orca Pascal) has a slight edge over TML in that prior conversations (not that many, by the way) lead me to believe they are not only interested in answering my specific inquiry, but they go further and insure that I understand the rationale behind the discussion (something which I appreciate tremendously!). Byte Works is, in my opinion, the penultimate software house in terms of support, quality, price, and commitment to well-thought-out products. Have a nice day. Bud Huber Long Beach, CA