[TUHS] Dave Cutler (was Re: Re: Happy birthday, Dick Hustvedt!)
ggm at algebras.org
Thu Feb 22 08:25:14 AEST 2018
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.
More information about the TUHS