[Info-vax] "Clever code", was: Re: wrong file format

Stephen Hoffman seaohveh at hoffmanlabs.invalid
Fri Jan 8 10:16:35 EST 2021


On 2021-01-08 13:14:12 +0000, Simon Clubley said:

> Yes. The VMS terminal driver is an example of this idiotic mindset and 
> is also the reason why, in 2021, we can't even do something as simple 
> as edit DCL command lines which are longer than the terminal width. :-(

Pragmatically, the terminal driver class-and-port design has survived 
for an unusually long time for software, and is still in active use.

Terminals and storage I/O are the two biggest class-and-port driver 
stacks, and for similar reasons—trying to have logic common to all 
devices, without having to maintain and update common code across 
multiple monolithic device drivers; splitting device-generic from 
device-specific processing.

The design assumptions and trade-offs around the terminal driver and 
LOGINOUT and JOB_CONTROL and CLI are all inter-related, too. Might 
command editing be better implemented in the CLI? Quite possibly. 
Probably. Sure. But there are requirements around responsiveness, and 
moving editing further from the hardware usually adds latency. In years 
past, terminal hardware was really slow. And some was even slower. So 
too was VAX slow. And debugging a CLI gets... interesting, too.

For why this line-editing length limit still exists? Not clever nor 
idiotic code. I'd tie that limit to a ~thirty year old class-and-port 
driver design mixed with support for yet older hardware and sorta-kinda 
support for far newer software terminals, with a very large dollop of 
compatibility-preservation, along with fewer non-revenue-focused 
long-term investments than any of us including the folks in OpenVMS 
development might prefer. Forever-compatibility has its costs. And 
rip-and-replace is less than popular with the apps and users dependent 
on the existing behavior. (There was some other and non-technical "fun" 
arising here aeons ago, too.)

Past some threshold app size or app complexity, it's never simple. 
Trade-offs all the way down, too.

I'm usually running terminal line widths ~200 characters, and usually 
using scripts or cut-and-paste for longer commands and repeated 
commands. Yes, this line-editing limit is annoying. Many other areas of 
OpenVMS are ripe for updates, too. Feature-competitive operating 
systems are very large projects. Very. Large.

Ponder the very long list of feature requests at VSI, and at the very 
limited budget and staff available, and at what from that list can get 
implemented, and what revenue that work might bring in. VSI hasn't 
surveyed the paying folks and prolly won't, but I'd put the x86-64 
port, the 2 TiB and other file system limits, and better integrated 
database support, all ahead of extended line editing, among other 
details.


-- 
Pure Personal Opinion | HoffmanLabs LLC 




More information about the Info-vax mailing list