[plt-scheme] swindle, macros and v360

From: Chris Wright (chris.wright at southernhealth.org.au)
Date: Fri May 25 00:40:04 EDT 2007

under v360

(define-syntax fred
  (lambda (x)
    (syntax-case x ()
      [(_ n) #'(+ n 1)])))

compiles fine and gives:

Welcome to DrScheme, version 360.
Language: Swindle.
> (fred 1)
2


under v 370

Welcome to DrScheme, version 370 [3m].
Language: Swindle.
errortrace: unrecognized expression form at top-level: (lambda (x)
(let-values (((arg) (#%app datum->syntax-object (quote-syntax here)
x))) (let-values (((rslt) (#%app #?# arg))) (if rslt (let-values (#?#
#?#) (let-values () #?#)) (#%app raise-syntax-error (#%datum . #f)
(#%datum . "bad syntax") arg)))))
>

it's fine with language set to pretty big

Welcome to DrScheme, version 370 [3m].
Language: Pretty Big (includes MrEd and Advanced Student).
> (fred 1)
2
>

my macro-foo is not within sight of fixing this .....

is there a newer version of swindle, or have I made an error in the
macro which swindle is catching... but compile ok under pretty big?

thanks for any help

Cheers

Chris
-- 
A/Prof Chris Wright FJFICM FRACP MBBS
Medical Director, ICU
Monash Medical Centre
Clayton, VIC


Posted on the users mailing list.