Subject: Re: Scheme macros
From: rpw3@rigden.engr.sgi.com (Rob Warnock)
Date: 21 Jun 2001 02:25:08 GMT
Newsgroups: comp.lang.scheme
Message-ID: <9grlu4$i83to$1@fido.engr.sgi.com>
glauber <theglauber@my-deja.com> wrote:
+---------------
| Is there a tutorial for Scheme macros anywhere? I know enough Common
| Lisp to write "safe" macros there, thanks to Paul Graham, but the
| section on "syntax" of R5RS COMPLETELY baffled me.
| I'm using mzscheme.
+---------------

This isn't exactly what you were asking, but...

MzScheme provides CL-style "defmacro" in the "compat.ss" library.
Or if you don't need/want all of that particular library:

	(define-macro defmacro
	  (lambda (name args . body)
	    `(define-macro ,name (lambda ,args ,@body))))

Just remember to use "." instead of "&rest".  ;-}  ;-}

[Confession: I never use R5RS macros myself, just "defmacro".]


-Rob

-----
Rob Warnock, 31-2-510		<rpw3@sgi.com>
SGI Network Engineering		<http://reality.sgi.com/rpw3/> [until 8/15]
1600 Amphitheatre Pkwy.		Phone: 650-933-1673
Mountain View, CA  94043	PP-ASEL-IA

[Note: aaanalyst@sgi.com and zedwatch@sgi.com aren't for humans ]