[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: elisp macros problem
From: |
David Kastrup |
Subject: |
Re: elisp macros problem |
Date: |
24 Jul 2004 22:50:18 +0200 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50 |
Pascal Bourguignon <spam@thalassa.informatimago.com> writes:
> Barry Margolin <barmar@alum.mit.edu> writes:
>
> > In article <cduad9$7tg$1@mughi.cs.ubc.ca>,
> > Lowell Kirsh <lkirsh@cs.ubc.ca> wrote:
> >
> > > (defmacro my-add-hook (hook &rest body)
> > > (let ((tempvar (make-symbol "cat")))
> > > `(flet ((,tempvar (sym str)
> > > (make-symbol (concat (symbol-name sym) str))))
> > > (add-hook (cat ,hook "-mode-hook") (lambda () ,@body)))))
> > >
> > > Does anyone know what's wrong with this and why it doesn't work?
> >
> > You need to use ,tempvar in place of cat in the last line.
>
> Then, (not (eq (make-symbol "toto")(make-symbol "toto"))), even on
> emacs lisp. You should use intern!
For accessing xxx-mode-hook, yes. But for the "cat" thingy, ,tempvar
would be ok, even though pretty pointless: one does not really need to
bind a function here.
--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
Re: elisp macros problem, Barry Margolin, 2004/07/24
Re: elisp macros problem, Lowell Kirsh, 2004/07/25
Re: elisp macros problem, Lowell Kirsh, 2004/07/25
Re: elisp macros problem, Kalle Olavi Niemitalo, 2004/07/26
Re: elisp macros problem, Kevin Rodgers, 2004/07/26
Re: elisp macros problem, Barry Margolin, 2004/07/25