On Sep 13, 2009, at 11:25 PM, Andre van Tonder wrote:

> On Sun, 13 Sep 2009, Abdulaziz Ghuloum wrote:
>
>>
>> On Sep 13, 2009, at 10:55 PM, Andre van Tonder wrote:
>>
>>> No, I think that kind of thing should be required to be an error
>>> in 1-pass, since it would break the usual lexical scope.
>>
>> If you think
>>
>> (let-syntax ((f (syntax-rules () ((_) 1))))
>> (let ()
>>   (define (g) (f))
>>   (define (f) 2)
>>   (g)))
>>
>> should be an error, do you also think that
>>
>> (let ([f (lambda () 1)])
>> (let ()
>>   (define (g) (f))
>>   (define (f) 2)
>>   (g)))
>>
>> should also be an error?
>
> Of course not.

Then I'm not following exactly.  How are you going to handle the
expression (f) in one pass and still make its f still refer to
the inner f (that you haven't seen yet)?

Aziz,,,

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to