[Info-vax] Prism/Pillar, was: Re: inertia or fundamentals about langages?
John Reagan
xyzzy1959 at gmail.com
Wed May 29 08:51:21 EDT 2019
On Wednesday, May 29, 2019 at 8:21:13 AM UTC-4, Simon Clubley wrote:
> On 2019-05-28, Stephen Hoffman <seaohveh at hoffmanlabs.invalid> wrote:
> >
> > I became aware of the DEC MICA work much later, but that too has some
> > good ideas. Some of those ideas certainly now seem viable and visible
> > within Windows 10.
> > http://www.bitsavers.org/pdf/dec/prism/
> >
>
> From the material I've read, Pillar also looked like a very interesting
> system implementation language. It's a pity there was never a freely
> available compiler for it.
>
> I wonder if any copyrights on the design documents would stop someone
> from using them to implement Pillar using, say, LLVM ? I'm not planning
> to do that BTW, but I have wondered about it while reading the Pillar
> reference manual.
>
> > The production ports of OpenVMS for Alpha and Itanium were interesting
> > and technically complex and challenging in various ways, but haven't
> > particularly diverged from the design and organization of the
> > progenitor VAX modular kernel.
> >
>
> Should that be monolithic, instead of modular ?
>
> I wouldn't exactly call the VMS kernel modular, especially by today's
> standards.
>
> Simon.
>
> --
> Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
> Microsoft: Bringing you 1980s technology to a 21st century world
The Pillar compiler was based on the VAXELN Epascal compiler. The module syntax (ie IMPORT/EXPORT) looks much like what ended up in the Extended Pascal standard. The DEC Pascal's [ENVIRONMENT] directive along with [HIDDEN] provides some but not all. We did look at adding that to DEC Pascal (conforming to the Extended Pascal standard, not the Pillar spec) but it never was coded (I have a design document for the changes needed to the PEN file to support multiple namespaces in a single PEN file). Pillar's "bound types" is akin to Extended Pascal's "schema" types (which IS in DEC Pascal) to give you run-time sized types (similar to what Ada provides). Pillar's BIND and DEFINE is a tip to their PL/1 heritage although a BLISS programmer would understand them too. Pillar also took the "::" typecast operator from DEC Pascal.
More information about the Info-vax
mailing list