[r6rs-discuss] typo on page 30

Michael Sperber sperber at informatik.uni-tuebingen.de
Sat Aug 25 10:22:45 EDT 2007


Abdulaziz Ghuloum <aghuloum at cs.indiana.edu> writes:

> On Aug 25, 2007, at 8:41 AM, Keith Wright wrote:
>
>> On page 30, section 10, we have the example:
>>
>>   (let ()
>>     (define-syntax foo
>>       (lambda (e)
>>         (let ([+ -]) (+ 1 2))))
>>     (define + 2)
>>     (foo))
>>
>> The second argument of |define-syntax| should
>> evaluate to a transformer (pg 31, 11.2.2).
>> A tranformer is...a procedure that must...
>> return a syntax object (lib pg 51, 12.3).
>>
>> The procedure in the example returns a number.
>
> A number is a datum and every datum is a syntax
> object.  Refer to r6rs-lib 12.2 for the definition
> of "syntax-object" and the distinction between
> a wrapped and an unwrapped one.
>
> The listed example is correct.

Whoops.  Forgot about that.  Will (un)fix.  Thanks!

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla



More information about the r6rs-discuss mailing list