[Info-vax] CRTL and RMS vs SSIO

Lawrence D’Oliveiro lawrencedo99 at gmail.com
Sun Oct 17 18:36:36 EDT 2021


On Monday, October 18, 2021 at 8:35:58 AM UTC+13, Arne Vajhøj wrote:

> Fully compatible DCL with logicals and symbols. 

The core of the VMS emulation, as far as user-mode code sees it, would be the compatibility library that the program links against -- call this “libstarlet”. This would implement QIO, RMS and whatever else we want to salvage from the VMS API. As I mentioned, this would not be completely self-contained: where necessary, it would communicate with other service processes.

For example, we would need a program called “dcl”. This would not only be a DCL-compatible command shell, spawning user-mode code in a child process, it would also provide services to that child process for accessing DCL variables and process/job logical names. And PPFs.

I think terminal I/O would also need to be mediated by the dcl process. That way, it can implement correct behaviour for control characters, read-with-prompt, broadcasts etc.

As for group- and systemwide logical names, I think we would need a separate daemon for that, longer-lived than any dcl process. That would also manage common event flag clusters and mailboxes. We could give it a boring, obvious name like “vmssys”. Or we could go for something more deeply meaningful, like “s0” or even “80000168” ...

> Fully compatible RMS library. 

I think this can be contained entirely within libstarlet.

> Fully compatible Basic implementation 
> 
> Fully compatible Pascal implementation. 

As mentioned, take the existing VMS-specific frontends and replace the backends with something from the GCC or LLVM projects.

> We can find tens of thousands of people that will: 
> - claim that it is easy 
> - provide 10-20 lines of English description 
> - etc. 

Like I said, give more specifics, and I can answer them more specifically. You want to talk about async QIOs? Event flags? Global sections? DECnet? Just ask. This is a discussion forum, we are here to discuss!



More information about the Info-vax mailing list