[Info-vax] [OT] Wirth style languages, was: Re: Obscure Ada compiler vendors?

Craig A. Berry craigberry at mac.com.invalid
Thu Apr 4 15:52:23 EDT 2013


In article <kjkbh6$bac$1 at dont-email.me>,
 Stephen Hoffman <seaohveh at hoffmanlabs.invalid> wrote:

> On 2013-04-04 15:16:49 +0000, Craig A. Berry said:
> 
> > If one were to rewrite VMS from scratch (which I still think is a crazy
> > idea as long as there is any possibility of maintaining the existing
> > code base), some combination of Haskell and C or Go would probably be
> > the current equivalents of BLISS and MACRO.
> 
> I'd tend to expect C99/C11 with extensions or with something akin to 
> Objective C, maybe subset C++, with Go or Lua or Python for some tasks.
> 
> It's unlikely to be selected, but maybe Rust <http://www.rust-lang.org> 
> or analogous would be looked at, if you're willing to be on the 
> bleeding edge.  The bleeding edge is a risky spot to be with a project 
> as big and as long-lived as an operating system, as you can end up with 
> your own Bliss and tool chain, if Rust or whatever other AD programming 
> language you choose doesn't gain wider traction, and disappears.   
> There's a debate here: <http://lambda-the-ultimate.org/node/4009>

Interesting.  I didn't know about rust.

> As good as it is, Haskell wouldn't be at the top of my list for an 
> operating system.  Same with Scala or Clojure.  Good languages both, 
> but you probably don't want the JVM underneath an operating system, if 
> you can avoid it.

Unlike the other functional languages, Haskell, as far as I can tell, 
is a true compiled language and does not run on a virtual machine like 
the others do.  For most things it generates code that is as fast as C 
or very close to it.  And while Haskell by default does garbage 
collection like all the others, unlike the others, Haskel can turn off 
garbage collection, which would likely be necessary for various 
low-level operating system components.  So it was no accident that I 
put forward Haskell in combination with a lower-level language as 
possible candidates.  I know it's against the rules for this newsgroup, 
but I actually did a fair amount of reading and thinking before posting 
:-).



> Rewriting all of OpenVMS?  That'd lead me to this state: 
> <http://www.youtube.com/watch?v=3L6i5AwVAbs>.   Even if you were to be 
> successful with a rewrite, once you're done with that very substantial 
> and years-long effort and investment, you would have something 
> approximating current-day VMS.  Not the features and functions that 
> folks would would want and would expect after all those years.   If 
> you're aimed at application compatibility (one of many choices and 
> trade-offs you'll be forced to make!), then rehosting on Mach 
> <http://www.sture.ch/vms/Usenix_VMS-on-Mach.pdf> or rebuilding the 
> kernel would likely be discouraged or disallowed.  The rest of the 
> market is not standing still here, and you're talking about a project 
> that took three or five years last time (Alpha to Itanium) for a fairly 
> straight port with very few changes, and with an engineering team that 
> was very familiar with VMS assigned to the effort full-time.   ~Thirty 
> million lines of Bliss and C and Macro32 is a huge project to 
> reconstitutue.

Yes, this was basically what I said in another thread, or maybe it was 
a different branch of this thread:

<craigberry-6B4740.22090126032013 at news.eternal-september.org>.  

The very size of the code base is one of the reasons I suggested 
something more concise, like Haskell.  Still not in any way realistic, 
but not quite as hopeless.



More information about the Info-vax mailing list