[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Requests for clarification



    Date: Tue 14 Aug 84 13:54:45-EDT
    From: STEELE@TL-20A.ARPA
    Some statement about "constant" list structures in compiled code
    needs to be made.  Many implementations would like to place constant
    list structure, particularly constants in compiled code, in read-only
    memory.  (MacLISP does this.)  This would mean that an expression such
    as (nconc '(a b c) x) would be illegal, at least in a program to be
    compiled.

I suggest that this be explicitly forbidden.  I don't think the compiler
should undertake to guarantee how much sharing of constant list structure
with constants in the same or other functions it will do or not do.

I also suggest that even constants created with #, be explicitly forbidden
to be modified since after load time they cannot be distinguished from normal
constants.  Constants should not be used as a substitute for global variables,
in my opinion.