Emacs Lisp

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 24 december 2021; verifiering kräver 1 redigering .
Emacs Lisp
Semantik Funktionell programmering , Metaprogrammering
Språkklass programmeringsspråk , funktionellt programmeringsspråk , Lisp , skriptspråk , imperativt programmeringsspråk och dynamiskt programmeringsspråk
Framträdde i 1985  ( 1985 )
Författare Richard Stallman ,
Guy Steele
Utvecklaren GNU-projekt
Filtillägg _ .el, .elc
Släpp 28.1 (4 april 2022 ) ( 2022-04-04 )
Typ system dynamisk , stark
Blivit påverkad Common Lisp , MacLisp
Licens GNU GPLv3
Hemsida gnu.org/software/emacs
Plattform Cross plattform
OS Cross plattform
 Mediafiler på Wikimedia Commons

Emacs Lisp  är en dialekt av programmeringsspråket Lisp som används i GNU Emacs och XEmacs textredigerare . Det mesta av Emacs är implementerat i Emacs Lisp. Ibland även förkortat elisp , även om förväxling kan uppstå med en äldre dialekt med samma namn som inte har något med Emacs Lisp att göra.

Emacs Lisp kännetecknas av ett kraftfullt bibliotek för att arbeta med textfiler, byggt på grundval av att manipulera sådana inbyggda primitiver som en buffert ( engelsk  buffer ), ett valt område ( engelsk  region ), en punkt ( engelsk  punkt ) och ett märke ( Engelska  märket ).

Till skillnad från andra moderna Lisp- dialekter ( Common Lisp , Scheme ) har Emacs Lisp endast dynamisk räckvidd . Detta förhindrar användningen av funktionella programmeringstekniker såsom stängningar . cl - förlängningen ger några gemensamma Lisp-funktioner till Emacs Lisp, inklusive lexikal omfattning [1] .

Exempel

Makroexempel i Emacs Lisp:

( defmacro inc ( var ) ` ( setq , var ( 1+ , var )))

Anteckningar

  1. GNU Emacs Common Lisp-stöd, Lexical Bindings Arkiverad 24 oktober 2012.

Länkar