The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Dave Cutler (was Re: Re:  Happy birthday, Dick Hustvedt!)
@ 2018-02-20 16:33 Paul Winalski
  2018-02-21  1:20 ` George Michaelson
  2018-02-22  2:44 ` [TUHS] " Dave Horsfall
  0 siblings, 2 replies; 9+ messages in thread
From: Paul Winalski @ 2018-02-20 16:33 UTC (permalink / raw)


On 2/20/18, Donald ODona <mutiny.mutiny at india.com> wrote:
> since '86 he was working on an operating system, named Mica, which failed.
>
> At 19 Feb 2018 18:13:59 +0000 (+00:00) from Paul Winalski
> <paul.winalski at gmail.com>:
>> Dave Cutler was in the VMS group only for VMS version 1.  He rarely
>> stayed on around for version 2 of anything.  Hustvedt's and Lipman's
>> contributions for VMS were more extensive and longer-lasting than
>> Cutler's.

Cutler had already left the VMS OS group by the time I joined DEC in
February of 1980.  After VMS he led the team developing PL/I and C
compilers for VMS.  These shared a common back end called the VAX Code
Generator (VCG).  The other VMS compilers at the time (Fortran,
Pascal, Cobol) had their own separate optimizers and code generators.
The VAX Ada compiler would also use VCG.

When version 1 of VAX PL/i and VAX C shipped, Cutler worked on
subsetting the VAX architecture so that a single chip implementation
could be done, and led the team that produced the MicroVAX I.  The
MicroVAX architecture emulated expensive instructions such as packed
decimal.  All of the later, single-chip VAXes used this architecture.

When the MicroVAX I shipped, Cutler devised a microkernel-based
real-time operating system for the VAX called VAXeln.

After VAXeln, Cutler led the team developing a RISC architecture
follow-on to the VAX called PRISM, and an operating system for it
called Mica.  Mica had a VAXeln-like microkernel, and the plan was to
layer personality modules on top of that to implement VMS and
Unix-style ABIs and system calls.

Alpha was chosen instead of PRISM as the VAX successor, and that is
when Cutler left DEC for Microsoft.  Windows NT has a lot of design
concepts and details previously seen in PRISM and VMS.

-Paul W.


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
  2018-02-20 16:33 [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!) Paul Winalski
@ 2018-02-21  1:20 ` George Michaelson
  2018-02-21 20:18   ` Nemo
  2018-02-22  2:44 ` [TUHS] " Dave Horsfall
  1 sibling, 1 reply; 9+ messages in thread
From: George Michaelson @ 2018-02-21  1:20 UTC (permalink / raw)


I used the VMS PL/1 to write an ISO transport layer as a gigantic
finite state machine in the computed GOTO via a jump table. First job
from graduating. Not my finest moment, but the compiler was awesome.
Fast, rigid. I think I had to get somebody to write some bliss32 or
even ASM to do a trick in the stack for some debug, cool moment for
me. The box of fiches of the OS code was there in the machineroom, It
was a revalation to me you could do that: go "read" the code, and see
what it did.

I don't know if we used VMS C from Dec. I have a feeling if you ran
Eunice, you used pcc or a derivative of pcc. Cross library calling was
pretty straightforward (ok, so passing function addresses and dynamic
structures into FORTRAN not such) and VMS had a well defined 'postbox'
mechanism for async I/O which was wierd if you were used to UNIX but
then .. the entire FS in VMS was wierd if you were used to UNIX.
Wierd, but also comforting: you told the filesystem you wanted fast
record indexing into a file as a binary construct and it said "sure:
I'll do that" and as long as you opened the file with the right
semantics, thats what you got.

I still have my thin-form PL/1 cheetsheet booklet. Its fat. Most of
these were 3-fold cards, its got staples. Not a big language mind you.

So basically, his compiler got me my first paper.
http://onlinelibrary.wiley.com/doi/10.1002/spe.4380150503/full

On Wed, Feb 21, 2018 at 2:33 AM, Paul Winalski <paul.winalski at gmail.com> wrote:
> On 2/20/18, Donald ODona <mutiny.mutiny at india.com> wrote:
>> since '86 he was working on an operating system, named Mica, which failed.
>>
>> At 19 Feb 2018 18:13:59 +0000 (+00:00) from Paul Winalski
>> <paul.winalski at gmail.com>:
>>> Dave Cutler was in the VMS group only for VMS version 1.  He rarely
>>> stayed on around for version 2 of anything.  Hustvedt's and Lipman's
>>> contributions for VMS were more extensive and longer-lasting than
>>> Cutler's.
>
> Cutler had already left the VMS OS group by the time I joined DEC in
> February of 1980.  After VMS he led the team developing PL/I and C
> compilers for VMS.  These shared a common back end called the VAX Code
> Generator (VCG).  The other VMS compilers at the time (Fortran,
> Pascal, Cobol) had their own separate optimizers and code generators.
> The VAX Ada compiler would also use VCG.
>
> When version 1 of VAX PL/i and VAX C shipped, Cutler worked on
> subsetting the VAX architecture so that a single chip implementation
> could be done, and led the team that produced the MicroVAX I.  The
> MicroVAX architecture emulated expensive instructions such as packed
> decimal.  All of the later, single-chip VAXes used this architecture.
>
> When the MicroVAX I shipped, Cutler devised a microkernel-based
> real-time operating system for the VAX called VAXeln.
>
> After VAXeln, Cutler led the team developing a RISC architecture
> follow-on to the VAX called PRISM, and an operating system for it
> called Mica.  Mica had a VAXeln-like microkernel, and the plan was to
> layer personality modules on top of that to implement VMS and
> Unix-style ABIs and system calls.
>
> Alpha was chosen instead of PRISM as the VAX successor, and that is
> when Cutler left DEC for Microsoft.  Windows NT has a lot of design
> concepts and details previously seen in PRISM and VMS.
>
> -Paul W.


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
  2018-02-21  1:20 ` George Michaelson
@ 2018-02-21 20:18   ` Nemo
  2018-02-21 21:33     ` Dave Horsfall
  2018-02-21 22:16     ` Warner Losh
  0 siblings, 2 replies; 9+ messages in thread
From: Nemo @ 2018-02-21 20:18 UTC (permalink / raw)


On 20/02/2018, George Michaelson <ggm at algebras.org> wrote (in part):
> I don't know if we used VMS C from Dec. I have a feeling if you ran
> Eunice, you used pcc or a derivative of pcc. Cross library calling was
> pretty straightforward (ok, so passing function addresses and dynamic
> structures into FORTRAN not such) [...]

Hhmmm... I recall using DEC's C compiler, which we called VAX C.
Calling C stuff from VAX FORTRAN required jiggery-pokery and the other
way was hopeless.  I recall (assuming no wetware bit-rot on my part)
that DEC's languages did not pass on the stack but stuffed the
arguments somewhere, passing a pointer to the somewhere.

N.


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
  2018-02-21 20:18   ` Nemo
@ 2018-02-21 21:33     ` Dave Horsfall
  2018-02-21 22:16     ` Warner Losh
  1 sibling, 0 replies; 9+ messages in thread
From: Dave Horsfall @ 2018-02-21 21:33 UTC (permalink / raw)


On Wed, 21 Feb 2018, Nemo wrote:

> Hhmmm... I recall using DEC's C compiler, which we called VAX C. Calling 
> C stuff from VAX FORTRAN required jiggery-pokery and the other way was 
> hopeless.  I recall (assuming no wetware bit-rot on my part) that DEC's 
> languages did not pass on the stack but stuffed the arguments somewhere, 
> passing a pointer to the somewhere.

Would that have anything to do with F*RTR*N being call by value-result?

I.e. if you modified a formal parameter, and that corresponding actual 
parameter was a constant (and only stored once), then...

-- 
Dave Horsfall DTM (VK2KFU)  "Those who don't understand security will suffer."


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
  2018-02-21 20:18   ` Nemo
  2018-02-21 21:33     ` Dave Horsfall
@ 2018-02-21 22:16     ` Warner Losh
  2018-02-21 22:25       ` George Michaelson
  1 sibling, 1 reply; 9+ messages in thread
From: Warner Losh @ 2018-02-21 22:16 UTC (permalink / raw)


On Wed, Feb 21, 2018 at 1:18 PM, Nemo <cym224 at gmail.com> wrote:

> On 20/02/2018, George Michaelson <ggm at algebras.org> wrote (in part):
> > I don't know if we used VMS C from Dec. I have a feeling if you ran
> > Eunice, you used pcc or a derivative of pcc. Cross library calling was
> > pretty straightforward (ok, so passing function addresses and dynamic
> > structures into FORTRAN not such) [...]
>
> Hhmmm... I recall using DEC's C compiler, which we called VAX C.
> Calling C stuff from VAX FORTRAN required jiggery-pokery and the other
> way was hopeless.  I recall (assuming no wetware bit-rot on my part)
> that DEC's languages did not pass on the stack but stuffed the
> arguments somewhere, passing a pointer to the somewhere.
>

The arguments were on the stack, but the calling convention also had some
metadata about the arguments you needed to worry about when calling
into/out of C, but rarely any time else. %DESCRIPTOR sticks in my head for
some traumatic reason.

Warner
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20180221/976ed360/attachment.html>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
  2018-02-21 22:16     ` Warner Losh
@ 2018-02-21 22:25       ` George Michaelson
  2018-02-22  2:38         ` Dave Horsfall
  0 siblings, 1 reply; 9+ messages in thread
From: George Michaelson @ 2018-02-21 22:25 UTC (permalink / raw)


I'm dredging up from tapestore memory but I think for things we'd
morally call "varargs" you had to have a way of telling the call
binding what the variant elements were. It's one thing to be inside a
language model where the heap and type bindings are known, and another
to break out into another language. NAG library (leeds uni had some
role in this, maybe maintenance contract. I lunched with the people
who worked on it. They were awesome gods of computing including one
feller who had a glass eyeball. Thats hardcore pirate programmers
right there!) its pretty well understood you passed numbers and arrays
of numbers, so the variations on call args were rather limited. Other
things? not such.

There were various warnings about using const and register and other
#pragma too.  Compilers mucking around too much.

The only language aside from LISP (sorry. forget I said that) which I
couldn't get to fly on the UNIX systems was Pascal, the Berkeley
compiler made completely different assumptions to the DEC-10 compiler
I'd used at university. Syntactically, the language felt different
even if it really wasn't. I think Berkeley did Pascal to get over some
educational funding barrier, it didn't feel like a real investment
(the p-system aside)

Actually I tell a lie. Snobol defeated me. I had no brain capacity to
understand it. APL had left me behind, on the DECwriter with the
modified alphabet. Keyboard in greek? Ok.. fool me once, more fool
you: fool me twice, Lambda Sigma Phi me.

On Thu, Feb 22, 2018 at 8:16 AM, Warner Losh <imp at bsdimp.com> wrote:
>
>
> On Wed, Feb 21, 2018 at 1:18 PM, Nemo <cym224 at gmail.com> wrote:
>>
>> On 20/02/2018, George Michaelson <ggm at algebras.org> wrote (in part):
>> > I don't know if we used VMS C from Dec. I have a feeling if you ran
>> > Eunice, you used pcc or a derivative of pcc. Cross library calling was
>> > pretty straightforward (ok, so passing function addresses and dynamic
>> > structures into FORTRAN not such) [...]
>>
>> Hhmmm... I recall using DEC's C compiler, which we called VAX C.
>> Calling C stuff from VAX FORTRAN required jiggery-pokery and the other
>> way was hopeless.  I recall (assuming no wetware bit-rot on my part)
>> that DEC's languages did not pass on the stack but stuffed the
>> arguments somewhere, passing a pointer to the somewhere.
>
>
> The arguments were on the stack, but the calling convention also had some
> metadata about the arguments you needed to worry about when calling into/out
> of C, but rarely any time else. %DESCRIPTOR sticks in my head for some
> traumatic reason.
>
> Warner


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
  2018-02-21 22:25       ` George Michaelson
@ 2018-02-22  2:38         ` Dave Horsfall
  2018-02-22  3:25           ` [TUHS] in defense of SNOBOL, APL (and Icon) (was " Charles H. Sauer
  0 siblings, 1 reply; 9+ messages in thread
From: Dave Horsfall @ 2018-02-22  2:38 UTC (permalink / raw)


On Thu, 22 Feb 2018, George Michaelson wrote:

> Actually I tell a lie. Snobol defeated me. I had no brain capacity to 
> understand it. APL had left me behind, on the DECwriter with the 
> modified alphabet. Keyboard in greek? Ok.. fool me once, more fool you: 
> fool me twice, Lambda Sigma Phi me.

In final year Comp Sci we had to write a compiler, so I told my lecturer 
(Ken Robinson) that I was going to do it in SNOBOL.  He threatened to fail 
me if I did...  I ended up using ALGOLW instead, and IMHO it was an 
amazing piece of work, being able to correct syntax errors so that it 
could continue compiling etc, and proved it by writing a program with 
every possible error being auto-corrected and producing the correct output 
when run.  That listing and deck of cards are long gone, alas.

As for APL, I see you've never used APL\360 on the Kleinschmidt 
(pronounced "Kline-shit") terminal.  A matrix printer, it regularly 
punched holes right through the paper; one joker put a page on the Comp 
Sci noticed board with a reddish IBM JCL card showing through, with the 
inscription "Who said APL programs weren't transparent?".  No, it wasn't 
me; I was responsible for certain other shenanigans instead, but I'm 
unsure of the Statute of Limitations...

-- 
Dave Horsfall DTM (VK2KFU)  "Those who don't understand security will suffer."


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] Dave Cutler (was Re: Re:  Happy birthday, Dick Hustvedt!)
  2018-02-20 16:33 [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!) Paul Winalski
  2018-02-21  1:20 ` George Michaelson
@ 2018-02-22  2:44 ` Dave Horsfall
  1 sibling, 0 replies; 9+ messages in thread
From: Dave Horsfall @ 2018-02-22  2:44 UTC (permalink / raw)


On Tue, 20 Feb 2018, Paul Winalski wrote:

> When the MicroVAX I shipped, Cutler devised a microkernel-based
> real-time operating system for the VAX called VAXeln.

Damn; I'm trying to remember a little ditty around that time, something 
like:

     I love my little MicroVax
     I like it when it fails

etc.  Does it stir anyone's memories?

-- 
Dave Horsfall DTM (VK2KFU)  "Those who don't understand security will suffer."


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [TUHS] in defense of SNOBOL, APL (and Icon) (was Re: Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
  2018-02-22  2:38         ` Dave Horsfall
@ 2018-02-22  3:25           ` Charles H. Sauer
  0 siblings, 0 replies; 9+ messages in thread
From: Charles H. Sauer @ 2018-02-22  3:25 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3143 bytes --]

[I’ll bring this back to AIX so as to not be straying too far from Unix.]

I learned SNOBOL in an undergraduate programming languages course at UT-Austin. 

When I went to Yorktown in 1975, I brought with me a queueing network simulation program, APLOMB, that I wrote in Fortran. I thought of APLOMB as almost incidental to my dissertation (chapter VI at http://technologists.com/sauer/CONFIGURATION%20OF%20COMPUTING%20SYSTEMS%20-%20AN%20APPROACH%20USING%20QUEUEING%20NETWORK%20MODELS.pdf <http://technologists.com/sauer/CONFIGURATION%20OF%20COMPUTING%20SYSTEMS%20-%20AN%20APPROACH%20USING%20QUEUEING%20NETWORK%20MODELS.pdf>).

The group I joined in Yorktown was very interested in APLOMB. I was encouraged to enhance it considerably, which I did, continuing with Fortran, in spite of wishing I was using a language with support for structured data types, pointers, etc.

One of my colleagues, the late Martin Reiser, had developed a numerical package, QNET4, for solving a subset of the queueing networks considered by APLOMB. Martin was adept with APL and designed QNET4 in APL, but subsequently maintained a PL/I version in parallel with the APL original. I never did much more than play with APL, though I think I had a Selectric ball for APL and may have had a 3277 with APL (IIRC, APL was an optional extra).

It soon came to pass that we wanted to put APLOMB and QNET4 under one roof and the combination became RESQ (http://web.archive.org/web/20130627040507/http://www.research.ibm.com/compsci/performance/history.html <http://web.archive.org/web/20130627040507/http://www.research.ibm.com/compsci/performance/history.html>), based on extending QNET4 and cobbling it with the Fortran APLOMB.

RESQ was very well received. Our management bemoaned the kludgey implementation, wishing APLOMB was in PL/I, convinced that getting APLOMB into PL/I would be an enormous effort.

Remembering my pleasant course experiences with SNOBOL, I used SNOBOL to create a Fortran to PL/I translator of sorts. I think it took me less than two weeks to write the translator, use it with APLOMB and begin working with the all-PL/I version of RESQ. Management, Martin, Ed MacNair (other primary RESQ developer), and I were all thrilled.

One of SNOBOL’s creators, Ralph Griswold, created a somewhat analogous but less syntactically intimidating successor, Icon (https://www2.cs.arizona.edu/icon/ <https://www2.cs.arizona.edu/icon/>). When we in AIX development bemoaned all the code that still existed as PL.8, I remembered the SNOBOL experience and prototyped a PL.8 to C translator in Icon. Dave Farber of ISC (not the CMU Prof. Farber) enhanced it and it was used to assist in getting the PL.8 code to C in AIX.

Charlie


--
voice: +1.512.784.7526       e-mail: sauer at technologists.com <mailto:sauer at technologists.com>           
fax: +1.512.346.5240         web: http://technologists.com/sauer/ <http://technologists.com/sauer/>
Facebook/Google/Skype/Twitter: CharlesHSauer

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20180221/8d8327a0/attachment.html>


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-02-22  3:25 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-20 16:33 [TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!) Paul Winalski
2018-02-21  1:20 ` George Michaelson
2018-02-21 20:18   ` Nemo
2018-02-21 21:33     ` Dave Horsfall
2018-02-21 22:16     ` Warner Losh
2018-02-21 22:25       ` George Michaelson
2018-02-22  2:38         ` Dave Horsfall
2018-02-22  3:25           ` [TUHS] in defense of SNOBOL, APL (and Icon) (was " Charles H. Sauer
2018-02-22  2:44 ` [TUHS] " Dave Horsfall

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).