[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
free variable references in interpreter.
Date: Mon, 4 Nov 85 11:49 EST
From: David C. Plummer <DCP@SCRC-QUABBIN.ARPA>
Subject: free variable references in interpreter.
To: Scott E. Fahlman <Fahlman@C.CS.CMU.EDU>,
George J. Carrette <GJC@MIT-MC.ARPA>,
Richard Mark Soley <SOLEY@MIT-MC.ARPA>,
David C. Plummer <DCP@SCRC-QUABBIN.ARPA>
cc: common-lisp@SU-AI.ARPA, gls@AQUINAS.THINK.COM
I disagree with what GJC said, because of the reasons Soley gave, but I
disagree with Soley's counter on aesthetic reasons. Suppose there were
a magic switch. What would the end of GETHASH look like?
(return-from gethash
(if *pure-cl*
(values entry got-it-p)
(values entry got-it-p key-stored-in-hash-table)))
That doesn't appeal to me.
Meta-point: I don't think we should care whether the IMPLEMENTATION code
is appealing or not, but whether code written in Common Lisp itself is
appealing. I think the form above is fine.
I think that the usual way such a switch would be used would be used
would be one of:
(1) Some macro, like (IN-LOCAL-CL-DIALECT-SUPERSET (gethash . . .))
(2) "-*- Dialect: Symbolics-Common-Lisp -*-" in the file's attribute
list.
(3) A global proclamation: (PROCLAIM '(SUPER-WINNING-LOCAL-DIALECT T)).
-- Richard