[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: n-ary functions rfc
I should point out that the implementation in SchemeXerox of this idea for
handling n-ary functions differs from that old proposal in a few cosmetic
details:
+ The marker in the lambda-list is the string "others", not the string
"arbitrary". Clearly, this won't satisfy those who dislike strings in the
lambda-list at all, but we thought the name was more appropriate.
+ The two identifiers after the marker are in the opposite order, with the
first getting bound to the function from indices to values and the second
getting bound to the number of excess arguments.
+ The name of the APPLY-like function is FAPPLY, not APPLYF, and the last two
arguments are, as in the lambda-list, in the opposite order from that shown
in the proposal.
We still don't like the name FAPPLY, but haven't come up with anything better.
We remember the proper order for the "others" parameters (and final FAPPLY
arguments) by analogy with the other indexing operations in Scheme (e.g.,
LIST-REF, STRING-REF, etc.): the aggregate value first followed by the index.
Other than these minor tweaks, we're still pretty happy with the idea; it still
seems quite clean, much easier to use in general than rest-lists, and much
easier to optimize.
Pavel