Jump to content

Embeddable Common Lisp: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
latest version from Wikidata; update official website
 
(One intermediate revision by one other user not shown)
Line 30: Line 30:


It includes a [[runtime system]], and two [[compiler]]s, a [[bytecode]] interpreter allowing applications to be deployed where no C compiler is expected, and an [[Intermediate representation#Intermediate language|intermediate language]] type, which compiles Common Lisp to C for a more efficient runtime. The latter also features a native [[foreign function interface]] (FFI), that supports inline C as part of Common Lisp. Inline C FFI combined with Common Lisp macros, custom Lisp <code>setf</code> expansions and compiler-macros, result in a custom compile-time C [[preprocessor]].
It includes a [[runtime system]], and two [[compiler]]s, a [[bytecode]] interpreter allowing applications to be deployed where no C compiler is expected, and an [[Intermediate representation#Intermediate language|intermediate language]] type, which compiles Common Lisp to C for a more efficient runtime. The latter also features a native [[foreign function interface]] (FFI), that supports inline C as part of Common Lisp. Inline C FFI combined with Common Lisp macros, custom Lisp <code>setf</code> expansions and compiler-macros, result in a custom compile-time C [[preprocessor]].

==References==
{{reflist}}


== External links ==
== External links ==
Line 39: Line 42:
[[Category:Common Lisp implementations]]
[[Category:Common Lisp implementations]]
[[Category:Common Lisp (programming language) software]]
[[Category:Common Lisp (programming language) software]]
[[Category:Free compilers and interpreters]]
[[Category:Free and open source compilers]]

Latest revision as of 23:23, 30 October 2024

Embeddable Common Lisp
ParadigmsMulti-paradigm: procedural, functional, object-oriented, meta, reflective, generic
FamilyLisp
Designed byGiuseppe Attardi
DevelopersDaniel Kochmański, Marius Gerbershagen
First appeared1 January 1995; 29 years ago (1995-01-01)
Stable release
23.9.9[1] Edit this on Wikidata / 9 September 2023
Typing disciplineDynamic, strong
Implementation languageC, Common Lisp
PlatformARM, x86
OSUnix-like, Android, Windows
LicenseLGPL 2.1+
Websiteecl.common-lisp.dev
Influenced by
Lisp, Common Lisp, C

Embeddable Common Lisp (ECL) is a small implementation of the ANSI Common Lisp programming language that can be used stand-alone or embedded in extant applications written in C. It creates OS-native executables and libraries (i.e. Executable and Linkable Format (ELF) files on unix) from Common Lisp code, and runs on most platforms that support a C compiler. The ECL runtime is a dynamically loadable library for use by applications. It is distributed as free software under a GNU Lesser Public License (LGPL) 2.1+.

It includes a runtime system, and two compilers, a bytecode interpreter allowing applications to be deployed where no C compiler is expected, and an intermediate language type, which compiles Common Lisp to C for a more efficient runtime. The latter also features a native foreign function interface (FFI), that supports inline C as part of Common Lisp. Inline C FFI combined with Common Lisp macros, custom Lisp setf expansions and compiler-macros, result in a custom compile-time C preprocessor.

References

[edit]
  1. ^ "ECL 23.9.9 release".
[edit]