Dialect of Lisp used as the primary implementation and extension language for Emacs
Emacs Lisp
Emacs logo
Paradigm
Functional, meta, reflective
Family
Lisp
Designed by
Richard Stallman, Guy L. Steele, Jr.
Developer
GNU Project
First appeared
1985; 39 years ago (1985)
Stable release
29.1
/ 30 July 2023; 9 months ago (2023-07-30)
Typing discipline
Dynamic, strong
Scope
Dynamic, optionally lexical
Platform
Emacs
OS
Cross-platform
License
GPLv3
Filename extensions
.el, .elc, .eln
Website
www.gnu.org/software/emacs
Influenced by
Common Lisp, Maclisp
Emacs Lisp is a dialect of the Lisp programming language used as a scripting language by Emacs (a text editor family most commonly associated with GNU Emacs and XEmacs). It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C, as is the Lisp interpreter. Emacs Lisp is also termed Elisp, although there are also older, unrelated Lisp dialects with that name.[1][2]
Users of Emacs commonly write Emacs Lisp code to customize and extend Emacs. Itself written in Emacs Lisp, Customize provides a set of preferences pages allowing the user to set options and preview their effect in the running Emacs session. When the user saves their changes, Customize simply writes the necessary Emacs Lisp code to the user's config file, which can be set to a special file that only Customize uses, to avoid the possibility of altering the user's own file.
Emacs Lisp can also function as a scripting language, much like the Unix Bourne shell or Perl, by calling Emacs in batch mode. In this way it may be called from the command line or via an executable file, and its editing functions, such as buffers and movement commands are available to the program just as in the normal mode. No user interface is presented when Emacs is started in batch mode; it simply executes the passed-in script and exits, displaying any output from the script.
^"HEDRICK at RUTGERS (Mngr DEC-20's/Dir LCSR Comp Facility" (1981-12-18). ""information about Common Lisp implementation"". Letter to "rpg at SU-AI, jonl at MIT-AI". Archived from the original on 2016-09-20. Retrieved 2019-07-28. We have some experience in Lisp implementation now, since Elisp (the extended implementation of Rutgers/UCI Lisp) is essentially finished.{{cite press release}}: CS1 maint: numeric names: authors list (link)
^"Ad for CCA EMACS". Unix Review. December 1984. p. 16. CCA EMACS and Elisp are trademarks of CCA Uniworks, Inc.
EmacsLisp is a dialect of the Lisp programming language used as a scripting language by Emacs (a text editor family most commonly associated with GNU...
Emacs /ˈiːmæks/ , originally named EMACS (an acronym for "Editor Macros"), is a family of text editors that are characterized by their extensibility. The...
GNU Emacs is a free software text editor. It was created by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating...
Differences between vi and Emacs are presented in the following table: Emacs has a non-modal interface Non-modal nature of Emacs keybindings makes it practical...
of Code projects. A Guile-based Emacs could offer better execution performance for EmacsLisp, support new EmacsLisp language features more easily, make...
part of the ANSI standard for Common Lisp and has been adapted into other Lisp dialects such as EuLisp or EmacsLisp. The basic building blocks of CLOS...
work on diverse successors to MacLisp: Lisp Machine Lisp (aka ZetaLisp), Spice Lisp, NIL and S-1 Lisp. Common Lisp sought to unify, standardise, and...
Gosling Emacs (often shortened to "Gosmacs" or "gmacs") is a discontinued Emacs implementation written in 1981 by James Gosling in C. Gosling initially...
augmented form within the context of the GNU Emacs text editor to describe the design philosophy of EmacsLisp functions or commands that attempt to intelligently...
Technology (MIT) Lisp machines. Lisp Machine Lisp was also the Lisp dialect with the most influence on the design of Common Lisp. Lisp Machine Lisp branched into...
AutoLISP is a dialect of the programming language Lisp built specifically for use with the full version of AutoCAD and its derivatives, which include AutoCAD...
Second Life virtual world Lisp, family of general-purpose and extension languages for applications including EmacsLisp for Emacs Lua, extension language...
Emacs via setting up Emacs inferior-lisp-mode, or using an integrated development environment (IDE) which supports OpenLisp syntax. LispIDE by DaanSystems...
can be used as a Boolean value) was retained in most Lisp dialects (Common Lisp, Scheme, EmacsLisp), and similar models were adopted by many scripting...
programming language Scheme begins with the development of earlier members of the Lisp family of languages during the second half of the twentieth century. During...
like Climacs, an Emacs-like editor. It also provides a mouse-sensitive Lisp Listener, a read–eval–print loop (REPL) for Common Lisp. BB1 Blackboard Kernel...
engineering" – (PDF) "My Lisp Experiences and the Development of GNU Emacs" – transcript of a speech Richard Stallman gave about Emacs, Lisp, and Lisp machines...
implementation of Emacs and a precursor of later GNU Emacs. It has been claimed to be the first version of Emacs to be written in the Lisp programming language...
ISLISP (also capitalized as ISLisp) is a programming language in the Lisp family standardized by the International Organization for Standardization (ISO)...