[r6rs-discuss] typo on page 30
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.
Aziz,,,
Received on Sat Aug 25 2007 - 09:43:33 UTC
This archive was generated by hypermail 2.3.0
: Wed Oct 23 2024 - 09:15:01 UTC