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

CPH reply on DEFINE



    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