knnngt@ukma.UUCP (Alan Kennington) (03/04/86)
********* Richard Mangeur de Lion - King of England (12th century) ***** The comments below were made upon first using the OSS Pascal compiler. That was about a week ago. Since then I've found a couple of things I am not entirely happy with. For instance, the "eoln" function does not work in the same way as in normal Pascal. And there are one or two aspects of the development cycle that are not quite deluxe. But overall, this seems still to be by far the best way I know to write programs on the ST. It is still a real pleasure to use it. Comments on the OSS Pascal compiler: Folks! This is one stunning compiler. A positive pleasure!! I'm beside myself with amazement and delight. Chuck out your old Vaxes, folks. Or use them as intelligent disk drives. Why suffer any longer with that user-hostile junk? Perhaps I should try to calm down...... Just today I received OSS Pascal in the mail (1 week after ordering it, costing $50.) The documentation stunned me. The best documentation I've seen for micro, mini, or real computer compilers in 15 years of programming. And then I gave it a test drive. It's just what I always wanted. In the middle of editing, you just push [F9] to save,compile and link (with optional maintenance of a backup of the last version, which makes me homesick for VMS version numbers on the files.) Compare that to mouldy old DRI C! It has standard Pascal plus all of the extensions that any rational person would want. And the variations from the standard don't require extensive reading of the documentation to convert old programs (like the ST Basic, for instance). The editor is good, and well integrated with the rest of the development process (merging files, storing portions, moving to the compilation phase, indents, backup mode, search/replace, insert/replace modes, etc.). To run an old VMS program from years ago, I only had to change "varying" type to "string" type, and move the filename definition for an input file from an "open" statement to the "reset" statement - all very clearly and accurately explained in the manual. And then it ran!!! There was once a time when languages were supposed to be machine-independent. And this compiler brings a bit of that back to the ST. (As opposed to Basic.) The manual even tells how to interface to assembly language and C (use of the stack, register usage etc.) And the compiler can be told to use lower case function names preceded by underscores so as to be compatible with DRI C. Bios, Xbios and Gemdos are accessed be function number, which means the Atari documentation is prabably necessary, and VDI/AES are called by almost the same names as in C, except that the two seem to have been integrated here. The C routine appl_init seems to have been replaced by init_gem, for instance. Other things I like: underscores allowed in identifiers, identifier names case-insensitive, a compiler directive to allocate stack/heap space, lots of different optional runtime checks for stack overflow, range-checking, pointer-range, an include directive etc. etc. The compiler will also name the program .prg or .tos as required by the saved options file. Using the .tos option, it's just like using the old Vax. And all of the mouse/window stuff seems to be included in the runtime library. I hope it isn't improper for me to write all of this. But I thought some of you out there would like to know what you're missing. Actually, I must admit that I would have liked to be able to mix Pascal and assembly language freely, but you can specify in the saved options file the list of code to be linked at link-time. Incidentally, I am not biased or self-interested or doing anything else of an underhand nature in writing all of this. so long ............. Alan Kennington knnngt@ukma.UUCP (or bitnet or something like that).