Emacs Lisp

ElispLisp.elcEmacs Lisp Client
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).wikipedia
111 Related Articles

GNU Emacs

EmacsEdiffEmacs Lisp Package Archive
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).
GNU Emacs is written in C and provides Emacs Lisp, also implemented in C, as an extension language.

Scripting language

scriptingscriptscripts
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). Emacs Lisp can also function as a scripting language, much like the Unix Bourne shell or Perl, by calling Emacs in batch mode.
The Emacs Lisp dialect of Lisp (for the Emacs editor) and the Visual Basic for Applications dialect of Visual Basic are examples of scripting language dialects of general-purpose languages.

Emacs

GNU EmacsEmacs pinkyEmacsWiki
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).
GNU Emacs is written in C and provides Emacs Lisp, also implemented in C, as an extension language.

XEmacs

Lucid Emacs
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).
Users can reconfigure almost all of the functionality in the editor by using the Emacs Lisp language.

Interpreter (computing)

interpreterinterpretedinterpreters
It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C, as is the Lisp interpreter.
For example, Emacs Lisp is compiled to bytecode, which is a highly compressed and optimized representation of the Lisp source, but is not machine code (and therefore not tied to any particular hardware).

Common Lisp

QuicklispANSI Common LispArmed Bear Common Lisp
Emacs Lisp is most closely related to Maclisp, with some later influence from Common Lisp.
Common Lisp is a general-purpose programming language, in contrast to Lisp variants such as Emacs Lisp and AutoLISP which are extension languages embedded in particular products (GNU Emacs and AutoCAD, respectively).

Scheme (programming language)

SchemeScheme programming languageR6RS
Although the Common Lisp standard had yet to be formulated, Scheme existed at the time Stallman was rewriting Gosling Emacs into GNU Emacs.

Scope (computer science)

scopelexical scopeLexical
A prominent characteristic of Emacs Lisp is in its use of dynamic rather than lexical scope by default (see below).
Examples of languages that use dynamic scoping include Logo, Emacs Lisp, LaTeX and the shell languages bash, dash, and PowerShell.

Lisp (programming language)

LispLisp programming languageLisp 1.5
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).
Most new activity has been focused around implementations of Common Lisp, Scheme, Emacs Lisp, Clojure, and Racket, and includes development of new portable libraries and applications.

Bytecode

byte codebyte-codeintermediate code
Emacs contains a compiler which can translate Emacs Lisp source files into a special representation termed bytecode.

Apel (emacs)

apel
The apel library aids in writing portable Emacs Lisp code, with the help of the polysylabi platform bridge.
In computer programming, apel (the initialism represents "A Portable Emacs Library") provides support for writing portable code in Emacs Lisp.

Programming language

programming languageslanguagedialect
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).

Text editor

text editorstext editingeditor
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).

C (programming language)

CC programming languageC language
It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C, as is the Lisp interpreter.

Preference

preferencespenchantpreferential
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.

Configuration file

configuration filesconfig fileconfiguration
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.

Unix

UNIX operating systemAT&T UnixUnix-like
Emacs Lisp can also function as a scripting language, much like the Unix Bourne shell or Perl, by calling Emacs in batch mode.

Bourne shell

shBourneshell
Emacs Lisp can also function as a scripting language, much like the Unix Bourne shell or Perl, by calling Emacs in batch mode.

Perl

Perl 5Perl programming languagePerl Script
Emacs Lisp can also function as a scripting language, much like the Unix Bourne shell or Perl, by calling Emacs in batch mode.

User interface

UIinterfaceweb interface
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.

Maclisp

Emacs Lisp is most closely related to Maclisp, with some later influence from Common Lisp.

Procedural programming

proceduralprocedural languageprocedural code
It supports imperative and functional programming methods.

Functional programming

functionalfunctional programming languagefunctional language
It supports imperative and functional programming methods.

Richard Stallman

Richard M. StallmanStallmanRichard Matthew Stallman
Richard Stallman chose Lisp as the extension language for his rewrite of Emacs (the original used Text Editor and Corrector (TECO) as its extension language) because of its powerful features, including the ability to treat functions as data.

TECO (text editor)

TECOText Editor and CorrectorTape Editor and Corrector
Richard Stallman chose Lisp as the extension language for his rewrite of Emacs (the original used Text Editor and Corrector (TECO) as its extension language) because of its powerful features, including the ability to treat functions as data.