blob: 1233d9fe24db6e571b2a140d639121215b42333e (
plain)
1
2
3
4
5
6
|
<h4 class="subsection">Macro Type</h4> <p>A <em>Lisp macro</em> is a user-defined construct that extends the Lisp language. It is represented as an object much like a function, but with different argument-passing semantics. A Lisp macro has the form of a list whose first element is the symbol <code>macro</code> and whose <small>CDR</small> is a Lisp function object, including the <code>lambda</code> symbol. </p> <p>Lisp macro objects are usually defined with the built-in <code>defmacro</code> macro, but any list that begins with <code>macro</code> is a macro as far as Emacs is concerned. See <a href="macros">Macros</a>, for an explanation of how to write a macro. </p> <p><strong>Warning</strong>: Lisp macros and keyboard macros (see <a href="keyboard-macros">Keyboard Macros</a>) are entirely different things. When we use the word “macro” without qualification, we mean a Lisp macro, not a keyboard macro. </p><div class="_attribution">
<p class="_attribution-p">
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc. <br>Licensed under the GNU GPL license.<br>
<a href="https://www.gnu.org/software/emacs/manual/html_node/elisp/Macro-Type.html" class="_attribution-link">https://www.gnu.org/software/emacs/manual/html_node/elisp/Macro-Type.html</a>
</p>
</div>
|