Subject: Re: Macros
From: Erik Naggum <erik@naggum.no>
Date: 12 Aug 2002 18:23:14 +0000
Newsgroups: comp.lang.lisp
Message-ID: <3238165394875049@naggum.no>

* "Thomas Stegen CES2000" <tho_stegen@hotmail.com>
| But in the end it showed me that macros and functions aren't that
| different. I thought that (defmacro madd () (+ 5 10)) would return '(+ 5
| 10). That it does not, seems like a good thing to me.

  Not to belabor the obvious, but it occurred to me that you need write

(defmacro madd ()
  `(+ 5 10))

  to make it return the list (+ 5 10).  Note the backquote/grave, but you
  could have used a simple ' in this case.  If you want it to return '(+ 5
  10), you actually have write

(defmacro madd ()
  ''(+ 5 10))

-- 
Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.