[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
changes to the design of SRFI-26 "Notation for specializing parameters without currying"
Dear readers of this discussion list,
It took some time, but a revision of SRFI-26 will soon be announced by the editors.
This email is to inform you about the changes to the design.
After the revision of March, 1 the following issues have been raised:
1. Should a slot in the operator position be allowed?
2. Should there be arguments after the rest-slot?
3. When should the non-slot expressions be evaluated?
As Al Petrofsky remarked, Scheme does not treat the operator
position different from the arguments. Therefore, it is most scheme-like
to allow a slot in the operator position, too.
I have included this feature and apologize for overlooking this
in the first place.
Al Petrofsky also suggested it might be useful to have arguments after
the rest-slot, for example as (cut list a b <...> c).
Although this is certainly possible in a technical sense, I think it is not a
good idea to include this feature in the mechanism. The notion of having
arguments after a variable number of arguments does not really solve
an important problem and therefore violates the "if it's not needed, it's
not needed"-principle. The forthcoming revision does not include it.
Dale Jordan restarted the discussion on the exact semantics
for the mechanism. He argues that the mechanism is most useful
when the non-slot expressions (the "constants") are evaluated
at the time the procedure is constructed.
After some thought, I decided to provide both versions of the
mechanism, and call them CUT and CUTE (cut-evaluated).
Indeed, I came across examples for both cases, which I usually
have resolved by accepting the performance penalty of CUT.
Please refer to the SRFI-document for details.
Dr. Sebastian Egner
Philips Research Laboratories
Prof. Holstlaan 4 (WY2)
5656 AA Eindhoven
tel: +31 40 27-43309
fax: +31 40 27-44918