[Info-vax] PL/I (Re: VMS Software needs to port VAX DIBOL to OpenVMS X86 platform)

Tim Sneddon tsneddon at panix.com
Tue Jan 5 20:42:34 EST 2021


Arne Vajh??j <arne at vajhoej.dk> wrote:
> On 1/5/2021 2:05 AM, Tim Sneddon wrote:
>> Craig A. Berry <craigberry at nospam.mac.com> wrote:
>>> The folks making money from PL/I on OpenVMS Alpha did not see a business
>>> case for porting it to Itanium almost 20 years ago,
>> 
>> There absolutely was a case.  Unfortunately, there was also an expectation
>> that somethings should come for free.  That something being the GEM backend.
>> PL/I uses the BL 21 release of GEM (with some other tweaks from later
>> versions).  However, there were some big changes in GEM that broke things
>> so much so that Ada didn't move forward either.  By the time Itanium
>> happened GEM development had moved on and little thought was given to all
>> the annoying things that PL/I needed.  So, a PL/I on Itanium either needed
>> a retargetted compiler or development to bring the VMS code-base to a
>> later GEM an then a move to GEM on Itanium.
>> 
>> I proposed retargetting the UNIX compiler to LLVM and moving forward.  This
>> was knocked back because the opinion was that HP should provide the GEM
>> backend, etc. for free.  There was nothing technical about the decision
>> at all.
> 
> Targetting JVM (or CLR for non-VMS) may have been a wise move.
> 

There was discussion about targetting JVM too, I did some preliminary
work there.  While it was a fun exercise heading to LLVM is a smarter
idea and has it's own JIT, even back in 2010.

> That would have solved the platform problem.
> 

What platform problem?  Retargeting a compiler is part of maintaining a
compiler, it is a completely expected and accepted task.

> Obviously there is also some potential problems. How common was
> it for VMS PL/I program to call LIB$/SYS$ or link with Macro-32/C code?
> 

Some? Try heaps.  PL/I code, like any other VMS application calls
LIB$ and SYS$ (and other multi-language libraries).  The compiler
itself used multiple languages:

* VAX -- PL/I and MACRO-32
* Alpha -- PL/I, C and MACRO-32

Regards, Tim.



More information about the Info-vax mailing list