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

Re : set in Scheme



> Here's my invaluable ;-) comment about _set_ in Scheme. As it is fairly easy
> to build up a case for loss of program readability with the addition of _set_
> (as opposed to _set!_), we should perhaps be pleased that it is probably 
> impossible (with macros, extend-syntax, what-not) to define _set_ in Scheme.

T has something more or less like the LISP SET, but it requires you to
specify the environment you're modifying:

  (*VALUE LOCALE IDENTIFIER)  gives the value of IDENTIFIER in LOCALE
    (locales seem to be more or less synonymous with environments)
  (SET (*VALUE LOCALE IDENTIFIER) NEW-VALUE)
    sets that value.

To avoid and engender confusion, I remark that T's SET is roughly Common
Lisp's SETF. 

How do people feel about this?  It still allows some extremely confusing
things.  Who has used Lisp's SET, and what has it been good for?

-- Bard the (LAMBDA (X) GARGOYLE)