Hi all, yes, there is a simple way: (import procedural-macros) and you'll have not only a hygienic (if you want so) define-macro, but other procedural macros and macro creators as well.
Cheers Juergen > > The FermaT program transformation system is implemented in WSL > and translated to Scheme for compiling or interpreting. > > It was originally developed using SCM scheme which uses defmacro > to define macros, eg: > > (defmacro floop (name . body) > `(call-with-current-continuation > (lambda (,name) > (do () (#f #t) > ,@body)))) > > (defmacro pop (v1 v2) > `(begin > (set! ,v1 (car ,v2)) > (set! ,v2 (cdr ,v2)))) > > (defmacro push (v e) > `(set! ,v (cons ,e ,v))) > > I am trying to port it to other Scheme versions. For bigloo > I can use define-macro to define defmacro as a macro: > > (define-macro (defmacro name . forms) > \`(define-macro (,name . ,(car forms)) ,\@(cdr forms))) > > Chicken scheme does not appear to have defmacro or define-macro > but does have define-syntax. > > Is there a way to define defmacro using define-syntax? > > -- > Martin > > Dr Martin Ward | Email: [email protected] | http://www.gkc.org.uk > G.K.Chesterton site: http://www.gkc.org.uk/gkc | Erdos number: 4 > > _______________________________________________ > Chicken-users mailing list > [email protected] > https://lists.nongnu.org/mailman/listinfo/chicken-users -- Dr. Juergen Lorenz Gruener Weg 27 29471 Gartow
signature.asc
Description: PGP signature
_______________________________________________ Chicken-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/chicken-users
