>>>>> "bc" == bob coyne <[EMAIL PROTECTED]> writes:

  bc> In porting some code from Lispworks to Cmucl, I encountered
  bc> the following.  It seems that when there's a quoted list
  bc> in compiled code that EQUAL sublists are made EQ to each other.
  bc> I don't know if this would be considered a bug or a feature, but
  bc> it seems a bit non-intuitive. 

CMUCL does this to reduce the size of FASL files (and as a side
effect, the size of images that it generates). CLtS allows literal
objects such as your quoted lists to be coalesced by the file
compiler; see section 3.2.4.4 "Additional Constraints on
Externalizable Objects". The specification does not allow this for
interactive compilation (via COMPILE), and CMUCL conforms to this
requirement (since recently, anyway).

 <http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/Body/sec_3-2-4-4.html>
  
-- 
Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>

Reply via email to