[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Questions about specification and possible implementations
- To: Wholey@CMU-CS-C.ARPA
- Subject: Re: Questions about specification and possible implementations
- From: JonL.pa@XEROX.ARPA
- Date: Thu, 04 Oct 1984 23:11:00 -0000
- Cc: JonL.pa@XEROX.ARPA, COMMON-LISP%SU-AI@SU-SCORE.ARPA, HEDRICK@RUTGERS.ARPA, Moon@SCRC-RIVERSIDE.ARPA, Rem%IMSSS@SU-SCORE.ARPA
- In-reply-to: Skef Wholey <Wholey@CMU-CS-C.ARPA>'s message of Thu, 4 Oct 84 20:43 EDT
NOTINLINE isn't the issue -- it's knowing *who* needs to be so protected
when one wants to ensure traceability. In fact, many major Interlisp-D
operations are ambiguous at the compiler level -- the compiler merely
emits an opcode with *may or may not* call the function of the
corresponding name.
I agree -- it's too bad that special forms and macros aren't traceable.
But as you recognize, that isn't the source of the unTRACEability
problem -- it's when the encapsulation function somehow depends on the
function being traced. If encapsulation functions were always compiled
(by possibly a super-fast non-optimizing compiler) then the space of
untraceables would diminish dramatically. PDP10 MacLisp tried to do
something like that -- using "hidden" copies of the systems functions
which it used (like PRINT ...). Unfortunately it, like Interlisp,
didn't "hide" QUOTE.
Re the space cost of "double-compilation" (may I call the scheme you
proposed that? the one to emit both code sequences for open and for
closed formats, which is toggled by a runtime switch), and you comment
". . . but I don't think there are 'myriads' of calls to those
functions". Did you examine the SpiceLisp implementation, or user
application programs?
-- JonL --