[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

*To*: srfi-71@xxxxxxxxxxxxxxxxx*Subject*: Re: named let*From*: Sebastian Egner <sebastian.egner@xxxxxxxxxxx>*Date*: Thu, 16 Jun 2005 14:01:50 +0200*Delivered-to*: srfi-71@xxxxxxxxxxxxxxxxx*In-reply-to*: <NvF5xB.A.-VF.8bUsCB@rotkohl>

> I'd like to know why multiple-values syntax can not be used in `named let'.

>

> (srfi-let lp ((a 1) (b 2) (c 3)) (list a b c)) ---> (1 2 3)

> (srfi-let lp ((a b c (values 1 2 3))) (list a b c)) ---> bad syntax error

In this case it seems obvious what the arguments of the procedure LP should be.

In other cases, in particular when rest arguments enter the scene, it is not so clear.

Consider this:

Now, which parameter list does LP have, to which variable(s) are the actual

arguments bound, and why?

The approach to this problem taken in SRFI 71 is to (implicitly) ask people to

use a different mechanism than multi-valued named LET in these cases.

Sebastian.

- Prev by Date:
**named let** - Next by Date:
**taking off a parenthesis** - Previous by thread:
**named let** - Next by thread:
**taking off a parenthesis** - Index(es):