[R6RS] New draft of arithmetic SRFI

Manuel Serrano Manuel.Serrano
Tue Oct 11 10:05:52 EDT 2005


> As discussed in Tallinn, it would be nice if people expressed an
> opinion on special multiple-value-binding syntax.  (At least those who
> haven't.)  The options on the table so far are (I believe):
> 
> 1. SRFI 8
>    http://srfi.schemers.org/srfi-8/
> 
> 2. SRFI 11
>    http://srfi.schemers.org/srfi-11/
> 
> 3. SRFI 71, or some subset thereof
>    http://srfi.schemers.org/srfi-71/
> 
> 4. the proposal by Kent
>    http://mailman.iro.umontreal.ca/mailman/private/r6rs/2005-August/000824.html
> 
> It'd be nice if we could resolve this soonish, as it has potential
> bearing on the record syntax.
> 
> I'm personally fine with either of these, but prefer those that simply
> extend LET, LET* and LETREC* (i.e. #3 and #4) rather than introduce
> new kinds of forms.  (I'd also prefer SRFI 11 over SRFI 8.)  I often
> have this:
> 
> (let* ((a ...)
>        (b ...))
>   (let-values (((c d e) ...))
>     (let* ((f ...)
>            (g ...))
>       ...)))
> 
> and dislike this:
> 
> (let*-values (((a) ...)
>               ((b) ...)
>               ((c d e) ...)
>               ((f) ...)
>               ((g) ...))
>   ...)
> 
> which has lots of parens and poor continuity.
I don't have a strong opinion on the syntax. I'm used to the 
Common Lisp/Dylan's MULTIPLE-VALUE-BIND and I find it okay. However, I can
understand the argument for introducing multiple values inside let bindings.
I don't care which variant we adopt (if we adopt any).

However, I'm strongly opposed to introducing the dot notation in this new
construction. I would love to be able to get rid of, as much as possible, 
implicit list constructions Scheme abuses of. To focus on multiple
values, I'm not sure that there is a point in allowing rest variables of
multiple values...

-- 
Manuel


More information about the R6RS mailing list