[plt-scheme] help with with-syntax
Do you mean this:
(define-syntax foo
(syntax-rules ()
((_ x ...)
(printf "You passed in ~a\n" (car (list 'x ...))))))
(define-syntax (blah stx)
(syntax-case stx ()
((_ first x ...)
(with-syntax ((f1 (datum->syntax-object #'first 'boo #'first)))
#`(foo f1 x ...)))))
(foo 1 2 3)
(blah q w e)
On Sep 16, 2006, at 11:10 PM, Jon Rafkind wrote:
> Im probably missing something basic but why doesn't the following
> replace the first argument to blah with 'boo? I sort of think it is
> but
> then the printf never happens.
>
> (define-syntax foo
> (syntax-rules ()
> ((_ x ...)
> (printf "You passed in ~a\n" (car (list 'x ...))))))
>
> (define-syntax blah
> (syntax-rules ()
> ((_ first x ...)
> (with-syntax ((f1 (datum->syntax-object #'first 'boo #'first)))
> #'(foo f1 x ...)))))
>
> #; (foo 1 2 3)
> (blah q w e)
> _________________________________________________
> For list-related administrative tasks:
> http://list.cs.brown.edu/mailman/listinfo/plt-scheme