Article View: comp.lang.clos
Article #577Redefining Classes in CLOS
From: Jon L White
Date: Thu, 16 May 1991 18:34
Date: Thu, 16 May 1991 18:34
27 lines
1941 bytes
1941 bytes
re: The short answer to the question is that most existing implementations
do not update all the instances as soon as the class is defined.
I'm curious. Although we've carefully crafted the CLOS design so that
it is permissible to do the updates "eagerly", does anyone know of ANY
CLOS implementation, either in use or planned, which does not do the
explicit version check upon access? [and "explicit check" also covers
the case of overloading "cache misses" for this purpose, to reduce
the overhead of access.]
Lucid's implementation has some extensions beyond the CLOS spec for
eagerly caching up all the method combinations and other tricks that might
be needed for generic functions, which would otherwise just be lazily
computed in the same way that macro-expansions in the interpreter are
*usually* delayed until necessary. It wouldn't take much more to provide
an explicit inteface for assuring that all objects are "up to date".
How important would this be to anyone? We've assumed that these
extensions are for those who either want a stripped-down delivery system
(one,say, in which there will be no further redefinitions, so the
redefinition and update code can just be "shaken" out of the image).
But in fact the more common usage seems to be to "warm up" all the caches
so that some demonstration of the WhizzySoftwareSystem won't be interrupted
by odd, "on the fly" pauses while caches fill up and garbage is collected.
-- JonL --
Technical Details
Message-ID:
<9105161834.AA01638@kuwait>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!tut.cis.ohio-state.edu!unreplyable!garbageReferences:
<91May16.094134pdt.29186@tracer-bullet.parc.xerox.com>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!tut.cis.ohio-state.edu!unreplyable!garbage From: jonl%kuwait@LUCID.COM (Jon L White) Newsgroups: comp.lang.clos Subject: Redefining Classes in CLOS Message-ID: <9105161834.AA01638@kuwait> Date: 16 May 91 18:34:18 GMT References: <91May16.094134pdt.29186@tracer-bullet.parc.xerox.com> Sender: welch@tut.cis.ohio-state.edu Distribution: inet Organization: CommonLoops Lines: 27