Newsgroups: | comp.compilers |
From: | pcg@decb.aber.ac.uk (Piercarlo Antonio Grandi) |
Nnewsgroups: | comp.compilers |
Keywords: | library, linker |
Organization: | Prifysgol Cymru, Aberystwyth |
References: | 93-08-104 93-09-014 |
Date: | Sat, 11 Sep 1993 12:15:10 GMT |
On Mon, 30 Aug 1993 16:28:18 GMT, Brent Benson
(brent@jade.ssd.csd.harris.com) wrote:
I'm not sure how shared libraries come into play, but this sort of
incremental compilation has been offered in Lisp programming
environments for years:
> (defun square (n) (* n n))
SQUARE
> (compile 'square)
SQUARE
> (disassemble #'square)
[ ... ]
While your proposal sounds interesting, I think the biggest obstacle
to incremental compilation in traditional environments (C/C++) is a
dynamic object file loader.
Well, you can hack one on most any BSD style environment -- indeed the
'-A' option to 'ld' and successive equivalent variants was introduced
to support extending Franz Lisp. SVR4 of course has a built-in dynamic
object file loader.
[ ... ] These things are available, along with a threads mechanism,
in the Xerox Portable Common Runtime (PCR). Unfortunately, it is not
ported to any system that I regularly use.
An interersting data point: I once saw a very, very nice Objective C
based system called RMG developed in a joint HP-Stanford project. It
was very Smalltalk-like, but in color, and very much faster (everything was
compiled and dynamically loaded, class by class, or method by method).
Too bad I don't know what has become of RMG, which was perhaps about as good
or better than Smalltalk or NeXTStep. Does anybody at HP or Stanford know?
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.