[Info-vax] OpenVMS system programming language

Stephen Hoffman seaohveh at hoffmanlabs.invalid
Fri Dec 27 22:47:58 EST 2024


On 2024-12-19 06:56:43 +0000, David Meyer said:

> Does VSI have a preferred or official language for system programming 
> for OpenVMS?

Starting in the early 1990s, the language choice for DEC OpenVMS was C.

> I know system programming for VAX/VMS was done in MACRO-32 and 
> BLISS-32, and at least some system programs were written in C when 
> Alpha was introduced.
> 
> VSI has the BLISS reference manual on the Legacy shelf.

BLISS was retired as a salable layered product long ago.

The BLISS compilers became available on the Freeware.

BLISS remains necessary for OpenVMS itself. As is MACRO-32, and some 
layered products including Notes.

> Have all the MACRO and BLISS programs been ported to C or C++, or will 
> they be in the future?

No, and no.

Back around Y2K, MACRO-32, BLISS, and C were roughly divided in thirds 
of the ~64K source modules in OpenVMS Alpha and OpenVMS I64 source 
pool, with the percentage of C rapidly increasing starting with the C 
system programming work introduced at V6.1.

VSI is likely still following those longstanding DEC OpenVMS practices 
here, and will be writing new code in C, rewriting existing code being 
overhauled into C, and maintaining and modifying the rest of the 
existing code in the original language as needed.

Some code gets rewritten due to other constraints, such as the PL/1 
code, and the Ada code.

Rewriting existing code is best approached with great caution, as it 
can very easily become exceedingly expensive, and tedious. It also 
requires immense resources. And even the best results can be perilous.

In a manner of consideration, rewrites are a whole lot like platform 
ports, though rewrites are far bigger and far riskier and far more 
costly projects. And keep other development work constrained for even 
longer than the port tends to cause.

There are, of course, other and even better ways to spend vast sums for 
negligible benefits for the OpenVMS vendor, such as a Linux "kernel 
transplant" that was suggested by a few folks around here. Though if 
you do want that something akin to that approach, have a look at Sector 
7 product.

I'd suggest reading some of Martin Fowler's writings in the area of 
incremental rewrites and refactoring, as that might help avoid some 
common missteps.


-- 
Pure Personal Opinion | HoffmanLabs LLC 



More information about the Info-vax mailing list