[Info-vax] September 6, 2016 - new Roadmap and State of the Port updates now on VSI website
Stephen Hoffman
seaohveh at hoffmanlabs.invalid
Thu Sep 8 12:45:07 EDT 2016
On 2016-09-08 16:13:43 +0000, Craig A. Berry said:
> ...While SSIO is important for some use cases, they aren't the ones
> I've run into personally. I would rather see a decent pipe()
> implementation in the CRTL.
>
> SSIO will likely involve looking at how I/O is done in the CRTL more
> generally and how it could be done better. For example, is $IO_PERFORM
> used where it can be, or is everything still using $QIO or RMS?
The C I/O implementation on OpenVMS is (necessarily) a morass of
compromise, compatibility with how OpenVMS works, standards compliance
and conflicts with how OpenVMS works.
All those logical name knobs are areas the developers didn't want to
break compatibility; an exit or an out from one of the (many) decisions
involved.
Even the logical name knobs are themselves a compromise; to avoid
increasing the scope of the work with a more generic and more
integrated solution.
It's still seems odd that the C implementation on OpenVMS doesn't have
better descriptor support baked in, too. It's all structs and
includes. Which works. But makes for reams of glue code.
There's no right answer here, and meeting the expectations of the
OpenVMS-native crowd and the portable C crowd can easily end up in
conflict.
I'd really prefer to see somebody look at the whole environment — C,
and then the CLE and beyond — and try to find better designs, and start
moving in that direction.
Toward 2021 and 2026. Not (blindly) preserving designs and decisions
and compromises and trade-offs made in years past.
--
Pure Personal Opinion | HoffmanLabs LLC
More information about the Info-vax
mailing list