[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CPH reply on DEFINE
- To: cth%indiana.csnet @ CSNET-RELAY
- Subject: CPH reply on DEFINE
- From: Jonathan A Rees <JAR @ MIT-MC>
- Date: 1 April 1985 23:46-EST
- cc: SCHEME @ MIT-MC
- In-reply-to: Msg of Sun 31 Mar 85 20:08:00 est from Chris Haynes <cth%indiana.csnet at csnet-relay.arpa>
Date: Sun, 31 Mar 85 20:08:00 est
From: Chris Haynes <cth%indiana.csnet at csnet-relay.arpa>
We were simply debating whether SET! should be required to extend the
global environment if its identifier is unbound (or equivalently, have
everything bound in the global environment to begin with). This would
make DEFINE unessential, though it might still be optional. It has
nothing to do with multiple environments for incremental definition,
except that MIT uses DEFINE for both purposes.
I think that people at MIT and at Yale generally believe that SET!
should NOT cause the variable assigned to become bound in ANY
environment (global or otherwise) if it wasn't already. Although MIT
Scheme's idea of environments argues for this position, there are these
other reasons: (1) taste - who wants to see all those side-effects all
over the place?; (2) one form one function - DEFINE binds, SET!
updates.
While I appreciate your desire to simplify things, DEFINE and SET! are
viewed here as two totally different operations, so I think they should
remain separate & required, as we agreed last fall.
Jonathan