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


> Date: Fri, 7 Oct 88  14:19:38 CDT
> From: David N Gray <Gray@DSG.csc.ti.com>
> > Therefore I
> > think it is legitimate both for users to use DEFPARAMETER for
> > situations where an error may result if the variable is changed, and
> > for implementations to be allowed (but not required) to issue warnings
> > about changing the values of DEFPARAMETER'ed variables.
> One might construe CLtL to mean that, but it is too big of an
> incompatible change from current practice to be seriously considered.

Which aspect do you think is incompatible with current practice?

It's my impression that users already do use DEFPARAMETER in
situations where changing it "is an error".  The thing that convinced
me of this was looking through the sources for a large, portable
Common Lisp application which I didn't write myself, namely CLX.  It
uses DEFPARAMETER all over the place for things that could certainly
cause things to break very badly if the values were changed -- for
example, it's used to define the X protocol version which it
implements (which eventually gets sent to the server), the base
address of the TCP port, and the like. 

I think an implementation would be justified in issuing a warning.
That doesn't forbid users from changing the value of a DEFPARAMETER'ed
variable, just indicates that users need to be very careful about
doing so.  Moreover, since I'm not suggesting that implementations be
*required* to issue a warning, it's certainly not an incompatible change
for implementors.