[HECnet] Algol compiler for VAX/VMS?

hvlems at zonnet.nl hvlems at zonnet.nl
Fri Apr 5 19:20:25 PDT 2013


How difficult is it to implement call by name? I've always assumed that call by reference got popular because it's easier. Call by name may be rather powerful (or complex :) like Jensen's device. 
Once you got that, would it be possible to grow it into a Burroughs Extended Algol compiler :-) ?
-----Original Message-----
From: <Paul_Koning at Dell.com>
Sender: owner-hecnet at Update.UU.SE
Date: Fri, 5 Apr 2013 18:11:48 
To: <hecnet at Update.UU.SE>
Reply-To: hecnet at Update.UU.SESubject: Re: [HECnet] Algol compiler for VAX/VMS?


On Apr 5, 2013, at 1:44 PM, Mark Wickens wrote:

On 05/04/2013 17:36, Paul_Koning at Dell.com wrote:
Bob There is also a full Algol68 compiler called algol68g http://jmvdveer.home.xs4all.nl/algol.html-- but that one is targeted to Intel CPUs. I suppose you could write a new back end... paul 
This might be worth a look - isn't it an interpreter rather than a compiler? You chuck an .a68 file at it and it runs it.
Otherwise, I might be wrong ;)

Regards, Mark.

It's described as a compiler, I haven't tried it yet.

BTW, please note that Algol 60 and Algol 68 are entirely different languages.   Algol 68 is at least as distant from Algol 60 as Modula-2 is.   The similarity in names is quite misleading.

Not only are the languages very different, but so is the implementation complexity.   An Algol 60 compiler is not all that hard.   One could easily imagine trimming down the Pascal front end for GCC to do Algol 60 instead.   There are one or two oddball things to cope with (like call by name) but apart from that, it's not difficult to parse and introduces no great complexities.   Algol 68 is a very different matter.   The ALgol 68 G page talks about its context sensitive grammar and various other things that might explain why algol68g is a separate implementation rather than a GCC front end.   (Too bad it isn't, then you'd have a VAX port at the cost of a build, give or take the GCC VAX code generation bugs.)

	paul



More information about the Hecnet-list mailing list