Email list hosting service & mailing list manager


Re: a meta-comment Reini Urban 18 Jan 2000 10:52 UTC

>First, does anyone want to speak up on Alternative 1 vs Alternative 2?
>My current inclination is Alternative 1, and unless there is ground-swell
>of support for Alternative 2, the final SRFI will use Alternative 1.

I'm no expert in scheme but I came to the same question last year for my
own lisp and its setf syntax.

Generally I can say that Alternative-3 (A3, ie. new-value first) is
semantically most compatible with old, existing functions,
A2 (ie. new-value second) maybe more efficient and A1 (ie. new-value last)
more compatible to newer lisp functions, such functions on vectors and
objects(!).

BTW: A3 is something like subst uses and which was semantically the best
these days:
   (subst new old tree) "change to new from old in ..."
=> (setf (tree-find old tree) new)
As you can see A1 is the most appealing way to express this now.

new-value last seems to be easier to learn. This was my main issue in
designing new setf functions.

  (get-obj obj :color) =>
  (set-obj! obj :color 1) seems to be better than (change 1 :color obj),
aeh (set-obj! 1 :color obj) or other permutations.

  "find what where" to "change the object to have color 1"

So the natural mapping would be A1 to me.
--
Reini Urban
http://xarch.tu-graz.ac.at/autocad/news/faq/autolisp.html