help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Why a defmacro that calls a defun?


From: Barry Margolin
Subject: Re: Why a defmacro that calls a defun?
Date: Tue, 03 Oct 2017 13:24:08 -0400
User-agent: MT-NewsWatcher/3.5.3b3 (Intel Mac OS X)

In article <address@hidden>,
 Eric Abrahamsen <address@hidden> wrote:

> I'm poking through Gnus, and seeing a fair number of places with code
> that looks like this:
> 
> (defmacro nnoo-define-skeleton (backend)
>   `(eval-and-compile
>      (nnoo-define-skeleton-1 ',backend)))
> 
> (defun nnoo-define-skeleton-1 (backend)
>   ...)
> 
> What does this actually do? All I can see happening is that a quote mark
> is added before the BACKEND argument in the macro. What is happening
> here?

It just causes the function to be called at compile time as well as run 
time, due to the use of eval-and-compile.

-- 
Barry Margolin, address@hidden
Arlington, MA
*** PLEASE post questions in newsgroups, not directly to me ***


reply via email to

[Prev in Thread] Current Thread [Next in Thread]