'hello world' warhorse?
I find it hard to imagine 'Hello World' as anything warhorsey, more an ageing hippy seated on the lawn making peace signs and singing old Joan Baez numbers on a greasy old guitar with three strings.
Great news, Pascal fans. After a lengthy hiatus, the cross-platform Free Pascal has emerged with an array of new features and new targets. Version 3.2.0 of Free Pascal has arrived in the 50th anniversary year of the Pascal language with new features and compiler targets, including Aarch64 and the venerable 16-bit Windows. …
You've obviously never taught a classroom full of youngsters their first programming class, Teiwaz. It's nice to be able to bring an old, experienced critter out of the pasture, sit a child on it's back, and watch the kid learn from age and experience. (Works with actual horses, too.)
Well, maybe, if you have a voluntary Bible class group.
With most kids, you'll be really really lucky if they only change 'hello world' to 'hello [redacted]'. The rest will be either not paying attention, looking at their phones or asking if the computers have any games on them 'cause 'this is bor-ring'
Me too! I wrote my first app that earned me money in Turbo Pascal. On a humble IBM PC it was lightning fast and created an executable that you could just run.
I updated and kept all of my Borland packages (I know sad) including Turbo C, C++, Delphi, Java, Paradox and even Turbo Prolog. I loved Delphi but, sadly, it is no longer a low priced product so stopped at version 12.
I have written apps in Lazarus and it is close enough to be usable and, of course, free! These days I only use Python but I do miss those days of Turbo Pascal on 4.7MHz 8088's..
I was joking, people ... I have never liked the language.
I first ran across UCSD Pascal at Ford Aerospace in very late 1980 or early 1981 ... It was implemented as "The UCSD P-system" on half a dozen pilot build IBM 5150 PCs ... Actually, it typically ran on two of them, three ran PC-DOS, and the last ran CP/M most of the time, and the built in ROM BASIC occasionally. All 6 sucked. So I guess I can say I've been dabbling in Pascal on and off for 40ish years. To date, I have not found a single project that wouldn't be better implemented in another language.
6502 systems like Apple and C64 might just get more attention if there's a compiler that supports them. OK emulation, especially emulation with an RPi, might be the way to get these environments to work, but there's enough ancient-computing-hardware fandom out there, it might just work...
maybe simh ? xmame ?
There have been discussions about 6502, but it is even more register starved than the Z80. And none of them are 16-bit capable, not even by combining 8-bit registers (iow needing zero page indirect indexing to process a pointer). The codegenerator doesn't model this atm.
Sounds fun, got to try it to see it it can compile my own old Pascal compiler project (attempted port of P-pascal that has gathered dust for about 30 years now...). But Win16 support? OK, if it scratches someones itch, but it is hard to see why one of the the worst programming environments ever, which isn't even "cool" by any measure, still excites anyone.
It does run on Catalina (caveats below) and you can compile to 64 bit Intel on MacOS.
In fact I have customers using programs supplied by me that do exactly that.
Firstly, FPC is a command line compiler.
FPC does include libraries to compile 64 bit MacOS programs which make API calls to the Cocoa system and so if you are clever enough you can write an FPC program in a text editor which compiles to a MacOS 64 bit Cocoa graphical app. I have compiled example apps myself supplied be people cleverer than me and they do work.
If you are not cleverer than me, then you will need some sort of widget set and maybe an IDE that handles Cocoa for you. I believe that you can do this with Lazarus but I haven't tried it.
What I have tried is TransSkel 5 written by Ingemar Ragnemalm and it does work very nicely.
Unfortunately it isn't really cross platform, so what I do is use fpgui as my widget set. This natively compiles to WIN32 API or to X11. My code will compile and run on Windows, Linux, Raspbian and MacOS, and yes it does run on Catalina, but you need an X server, namely xquartz.
I have been working on a native port of Cocoa for fpgui but I've not done anything with it for nearly a year. I am starting to feel quite guilty about that.
Anyway, my point is that the FPC compiler does support Catalina very well and for gui apps it does support Cocoa. If you aren't into raw Cocoa programming then widget sets and IDEs are available. Cross platform isn't so easy.
I haven't yet figured out how I will handle ARM64 MacOS. That's likely going to be a pain in the @#re and frankly Apple are just a pain constantly changing things. I can write code that works on XP right through to Windows 10 in one hit (though not 10S). I can write Linux code that works on anything with an X11 server in one hit (thanks fpgui) but Apple just have to keep messing about with stuff. Even without the major changes the are constantly depracating API calls and I'm still sore with them that my Macbook Pro 17 with an i7 and a GPU won't run Catalina just because it's the wrong GPU. I don't even want a Mac, it's just for testing customer code.
Maybe it does, with caveats.
I, however, simply went to their downloads area and the only Mac OS binaries available were (and still are as of now) for i386 and PowerPC. If I want 64 bit I can go for FreeBSD, Linux, Solaris, and Windows.
They are a niche option. A very good one, but still niche. So unfortunately to stand out they can't be available 'with caveats'. Unfair, maybe. Still true.