|[3 earlier articles]|
|Re: Incremental Compilers firstname.lastname@example.org (Richard F. Man) (2000-05-10)|
|Re: Incremental Compilers email@example.com (Matthew Markland) (2000-05-12)|
|Re: Incremental Compilers HSauro@fssc.demon.co.uk (Herbert M Sauro) (2000-05-12)|
|Re: Incremental Compilers firstname.lastname@example.org (Mike Kent) (2000-05-12)|
|Re: Incremental compilers brunix!apollo!alan (Alan Lehotsky) (1986-09-18)|
|Incremental compilers email@example.com (1989-01-24)|
|Re: Incremental compilers firstname.lastname@example.org (Paul Fuqua) (1989-01-15)|
|Re: Incremental compilers rogerson@PEDEV.Columbia.NCR.COM (1989-01-26)|
|Re: Incremental Compilers email@example.com (Nick Rothwell) (1989-01-27)|
|Date:||Wed, 25 Jan 89 09:50:04 CST|
|From:||Paul Fuqua <firstname.lastname@example.org>|
|In-Reply-To:||Msg of 24 Jan 89 22:12:43 GMT from email@example.com (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 firstname.lastname@example.org
Texas Instruments Computer Science Center
PO Box 655474 MS 238, Dallas, Texas 75265
Return to the
Search the comp.compilers archives again.