|[3 earlier articles]|
|Re: Incremental Compilers email@example.com (Richard F. Man) (2000-05-10)|
|Re: Incremental Compilers firstname.lastname@example.org (Matthew Markland) (2000-05-12)|
|Re: Incremental Compilers HSauro@fssc.demon.co.uk (Herbert M Sauro) (2000-05-12)|
|Re: Incremental Compilers email@example.com (Mike Kent) (2000-05-12)|
|Re: Incremental compilers brunix!apollo!alan (Alan Lehotsky) (1986-09-18)|
|Incremental compilers firstname.lastname@example.org (1989-01-24)|
|Re: Incremental compilers email@example.com (Paul Fuqua) (1989-01-15)|
|Re: Incremental compilers rogerson@PEDEV.Columbia.NCR.COM (1989-01-26)|
|Re: Incremental Compilers firstname.lastname@example.org (Nick Rothwell) (1989-01-27)|
|Date:||Wed, 25 Jan 89 09:50:04 CST|
|From:||Paul Fuqua <email@example.com>|
|In-Reply-To:||Msg of 24 Jan 89 22:12:43 GMT from firstname.lastname@example.org (Charlie D. Havener)|
Date: Tuesday, January 24, 1989 4:12pm (CST)
From: charlie at genrad.com (Charlie D. Havener)
Subject: Incremental compilers
I know the Lisp compiler on the Symbolics work station is incremental ...
Incremental compilation on a Symbolics (or TI Explorer, or LMI Lambda)
is made easier by using dynamic linking all the time, and by the fact
that a compiled function is a first-class Lisp object like any other.
To omit lots of details, the name of a function contains a pointer to
the function itself. When you (re)compile a function, just replace the
pointer with the new one. Other functions that call this one indirect
through the name, so nobody has to be relinked to see the new
This handles function-by-function incremental compilation, not
line-by-line, but I don't think you can do it to any finer grain than
functions, or would want to.
I think that Saber does the same sort of name-to-function association
and indirection in their interpreter, but I don't know for sure.
Paul Fuqua email@example.com
Texas Instruments Computer Science Center
PO Box 655474 MS 238, Dallas, Texas 75265
Return to the
Search the comp.compilers archives again.