[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.