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 am in favor of Alternative 1. It is symmetric with what we already have, and for SET-CAR!, VECTOR-SET!, and so on, Alt.1 is clearly most reasonable. For things like ARRAY-SET! (see eg Alan Bawden's code in SLIB) Alt.2 seems more reasonable because ARRAY-SET! takes a variable number of arguments, and, as the proposal already states, it's a little messy, both to code and performance-wise, to take the value as the last argument. However, using constructions like CASE-LAMBDA it becomes much less messy (at least performance-wise) to write setters that take the value as the last argument, which I think is a point in favor of Alt.1. As it happens, _neither_ alternative is right for ARRAY-SET! as the latter is written now, because it takes array first, then value, then subscripts. I.e., (set! (setter array-ref) array-set!) won't work with either alternative. That situation will probably be common when it is "natural" to put the value before subscript-type expressions but after the object being assigned to. --lars