Linkage Declaration (was Re: Standardization (of FORTRAN, Ada, ect.))

Larry Campbell campbell at redsox.UUCP
Mon Dec 5 01:22:53 AEST 1988


In article <2086 at garth.UUCP> phipps at garth.UUCP (Clay Phipps) writes:

}There was an interesting source-level mechanism reported 
}from Carnegie-Mellon U.:
} 
}    William A. Wulf:
}    "The Problem Of The Definition Of Subroutine Calling Conventions",
}    _SIGPLan Notices_, 1972 December, p. 3..8.
}
}It was intended to allow definition of machine-level information
}on routine invocation mechanisms from BLISS source code:

 ... description of syntax omitted ...

}I don't know whether it became a conventional part of BLISS.

It did become part of the BLISS in use at DEC.  On the VAX there are only
two styles of subroutine call, but on the PDP-10 there were literally
dozens, plus system calls implemented by illegal opcode traps.  The BLISS
compiler on the PDP-10, BLISS-36, had built-in subroutine linkages for the
system calls and the more common subroutine calls.  You could also, of
course, define your own linkages for interfacing with funky old code.

BLISS is an interesting language that has received less attention than I
think it deserves.  Unfortunately, only CMU and DEC ever did much with BLISS,
as far as I know.  If you read any BLISS literature you should be aware that
DEC has added *lots* of enhancements to the language.  The first BLISS
compiler, BLISS-10, was originally designed for the PDP-10 and had lots of
PDP-10-isms wired into it.  CMU also did a PDP-11 version that was quite
different.  DEC essentially merged the two, added a powerful macro
preprocessor, a condition handling facility, and other features, producing
what is, in my opinion, a very nice language for implementing
machine-dependent code (device drivers, operating system kernels, etc.)
-- 
Larry Campbell                          The Boston Software Works, Inc.
campbell at bsw.com                        120 Fulton Street
wjh12!redsox!campbell                   Boston, MA 02146



More information about the Comp.lang.c mailing list