[r6rs-discuss] [Formal] defer lambda rather than define rhs when expanding body
On Mar 12, 2007, at 3:54 AM, Per Bothner wrote:
>> What's so special about expanding a lambda anyways? What about
>> case-lambda,
>> delay, forms that expand to some occurrence of lambda (e.g. let,
>> cond, etc.),
>> lambdas embedded in other expressions, e.g. (cons (lambda ()
>> (MAC)) 12),
>> etc.? What does your proposal say about these?
>
> I believe there are all derived forms, defined in terms of lambda.
> (Or at least they can be, and were in R5RS.)
So, according to your proposal, should the following examples be
allowed or
disallowed to come before a (define-syntax MAC ---):
1. (define t1 (cons (MAC) #f))
2. (define t2 (cons (lambda () (MAC)) #f))
3. (define t3 (let ([x (MAC)]) x))
4. (define t4 (let () (MAC)))
5. (define t5 (cond [foo => (MAC)]))
6. (define t6 (if #f (MAC)))
Aziz,,,
Received on Mon Mar 12 2007 - 04:10:25 UTC
This archive was generated by hypermail 2.3.0
: Wed Oct 23 2024 - 09:15:01 UTC