Scott:
Yes, I would not mind a decent Mac OS compiler as well. I used to think I would move all of my work to MacOS, generally being a better OS that the others, but these days I am to heavily involved with Linux to do that. In any case, I have all three types of machines (and then some) here at my house, Windows, Linux and Mac, so its just a matter of what I need at the moment. In any case, I have sympathy for your position.
Though I'm now using macOS for all my machines, I'm not wedded to it. If Apple keeps doing stupid things (like preventing one from doing ls in ~/.Trash/ !!!) then eventually I'll be forced to migrate away to Linux. I avoid the evil empire.
FPC certainly qualifies as a cross platform OS, and I believe it runs well on MacOS??
It does run, but because they have a legacy of bells and whistles it doesn't comple vanilla Pascal from 1982 (ISO 7185?) ... Since p2c will compile bad code and produce garbage without warning (!) I use FPC as an error checker and then if the program passes I give it to p2c. The script for this is not public. The FPC folks are working on getting my programs to compile properly so eventually I may be able to use that.
mode, but locked you into "ISO 7185 jail", ie, made it inconvienent or impossible to use their extensions unless you drop the option, in which case most of your source would not compile, etc. Perhaps someone with FPC experience could weigh in here.
I have intentionally avoided system dependent extensions (except for date/time) and as a result my programs written 30+ years ago still compile ... I built a 'module' system that uses comments to mark sections of code and inserts the sections from a library into a program. This way I'm not dependent on compiler dependent insertion commands. https://alum.mit.edu/www/toms/delila/module.html
Your association with P2C interests me. I used that to translate Pascal libraries for Petit-Ami (another one of my projects). The tool is awful. It crashes if you give it any sources that are even slightly wrong, and the (original) author takes pains to mention in the documentation that he knows quite well about this and does not, in fact, care. I wonder if you had improved that situation?
No, I provide the original with minor changes only. https://alum.mit.edu/www/toms/pascalp2c.html
"I write scripts that call compilers with the parameters needed to compile my programs. If the name of the compiler changes then the scripts break."
Well, ok, but note that the name for my project is Pascal-P5, has been so for 10 years, and will always be named that. Pascal-P6 is a whole 'nuther beast entirely. At my development rate (glacial) I don't think anyone is going to need to rewrite their scripts a lot.
Ok, cool.
Tom
Thomas D. Schneider, Ph.D. Senior Investigator National Institutes of Health National Cancer Institute Center for Cancer Research RNA Biology Laboratory Biological Information Theory Group Frederick, Maryland 21702-1201 schneidt@mail.nih.gov https://alum.mit.edu/www/toms