You need (require (for-syntax syntax/parse)) because you are using it inside a define-syntax. On Sep 24, 2013 11:56 AM, "Konrad Hinsen" <konrad.hin...@fastmail.net> wrote:
> Hi everyone, > > I am trying to learn about syntax-parse, starting with the introduction > of the "Syntax" documentation. > > Unfortunately, the very first example given for the use of syntax-parse > doesn't work in my Racket installation: > > Welcome to Racket v5.90.0.9. > racket@> (require syntax/parse) > racket@> (define-syntax (mylet stx) > (syntax-parse stx > [(_ ([var-id rhs-expr] ...) body ...+) > #'((lambda (var-id ...) body ...) rhs-expr ...)])) > stdin::277: _: wildcard not allowed as an expression > in: (_ ((var-id rhs-expr) ...) body ...+) > errortrace...: > context...: > try-next > > /Users/hinsen/Development/racket/pkgs/errortrace-pkgs/errortrace-lib/errortrace/errortrace-lib.rkt:480:4 > > /Users/hinsen/Applications/Racket/collects/racket/private/misc.rkt:87:7 > > I tried replacing the wildcard by "mylet", but that only leads to another > error > message: > > racket@> (define-syntax (mylet stx) > (syntax-parse stx > [(mylet ([var-id rhs-expr] ...) body ...+) > #'((lambda (var-id ...) body ...) rhs-expr ...)])) > stdin::842: ...: ellipses not allowed as an expression > in: ... > errortrace...: > context...: > try-next > > /Users/hinsen/Development/racket/pkgs/errortrace-pkgs/errortrace-lib/errortrace/errortrace-lib.rkt:480:4 > > /Users/hinsen/Applications/Racket/collects/racket/private/misc.rkt:87:7 > > Am I doing something wrong here? Or are the examples obsolete? > > Konrad. > ____________________ > Racket Users list: > http://lists.racket-lang.org/users >
____________________ Racket Users list: http://lists.racket-lang.org/users