At Fri, 15 Aug 2014 09:55:11 +0400, Roman Klochkov wrote: > What is the difference? > > > (let ([stx #'(1 (+ 3 4) 5 6)]) (equal? (syntax->list stx) (syntax-e stx))) > #t Or syntax->list == (lambda (x) (let ([res (syntax-e x)]) (if (list? x) x > #f))) ?
You need a `.` to expose the difference: > (syntax-e #'(1 . (2))) '(#<syntax::35 1> . #<syntax::39 (2)>) > (syntax->list #'(1 . (2))) '(#<syntax::62 1> #<syntax::67 2>) ____________________ Racket Users list: http://lists.racket-lang.org/users

