Skip to main content

*ONLY* for questions about Emacs Lisp as a language, compared to other languages, in particular, compared to other Lisp dialects. That is, it is for questions *about the language* itself. *DO NOT USE IT* for questions about *using* Emacs Lisp, because most questions here are about using Elisp, and adding this tag to them is redundant. Emacs Lisp is the scripting and programming language that the Emacs editor is built on.

Emacs Lisp is a dialect of the Lisp programming language used as a scripting language by Emacs. It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C (as is the Lisp interpreter itself).

The most common way to customize Emacs is by Emacs Lisp expressions in your init file, ~/.emacs or ~/.emacs.d/init.el.

Emacs packages are also predominantly written in Emacs Lisp. See A guide to learning Emacs Lisp for non-programmers for reference. The Emacs Lisp Reference is also viewable in Emacs with C-him elisp RET.

Use for questions about the language itself, in particular, its relation to other Lisp dialects and differences from them.

Please DO NOT use for questions about using Elisp, e.g., snippets of code in your customizations or questions about how to write an application. Use only for questions about the nature of the language itself.

When available and appropriate, use more specific tags about the aspects of the language, such as elisp-macros, variables, lexical-scoping, etc. You can use such tags for questions about using such things, as well as questions about their nature/meaning.

Wisdom from the Stack