Subject: Re: setf not binding variable in code From: Erik Naggum <erik@naggum.no> Date: 1999/03/30 Newsgroups: comp.lang.lisp Message-ID: <3131781604973288@naggum.no> * Vassil Nikolov <vnikolov@poboxes.com> | but SET is deprecated. I'm curious how people react to this "deprecated" thing. the other day, I saw some code that did LOAD at the top of a file because the author was scared of REQUIRE and PROVIDE, although he was in fact producing modules. the reason was no better than that they were "deprecated". I don't think it's a good idea to avoid things just because they are deprecated when no better solution exists. e.g., if the accessor is (symbol-value symbol), then clearly setf of same is the best solution. if, however, the accessor is EVAL, I think SET is a better solution because the fact that we access a symbol's value slot is incidental to that usage. other deprecated features have similar rationales, but not all. e.g., I can fully accept the deprecation of the :TEST-NOT argument to predicates, but not because I believe in COMPLEMENT (which I don't), but because it has clear and present problems when combined with :TEST. the same problem does not exist with the -IF-NOT functions, which I have posted about previously. BTW, I think REQUIRE and PROVIDE _can_ be removed from the standard only after a DEFSYSTEM has been included. #:Erik