This page is part of the web mail archives of SRFI 17 from before July 7th, 2015. The new archives for SRFI 17 contain all messages, not just those from before July 7th, 2015.
>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