articles/common_lisp.md: new article
This commit is contained in:
parent
35f3b87a6e
commit
a5b655dfc5
1 changed files with 32 additions and 0 deletions
32
articles/common_lisp.md
Normal file
32
articles/common_lisp.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
# Common Lisp
|
||||
Common Lisp is a [Lisp](lisp.md) dialect, created as a successor of MIT's Maclisp.
|
||||
|
||||
It also one of the most efficient (in terms of execution speed) Lisp, almost archiving the
|
||||
performance of an equivalent [C](c.md) program when using a compiler and type hints.
|
||||
|
||||
Unlike other Lisps, Common Lisp is gradually typed: by default its type system is dynamic,
|
||||
but it allows to specify the explicit type for a binding, which then a compiler can use
|
||||
for compile-time type checking and for producing better [machine code](machine_code.md).
|
||||
|
||||
It also allows for [OOP](oop.md) with the included CLOS (Common Lisp Object System).
|
||||
|
||||
## Implementations
|
||||
- [SBCL](https://www.sbcl.org/) (Steel Bank Common Lisp): a [JIT](jit.md) compiler, seems
|
||||
to be the most popular implementation; public domain.
|
||||
- [CLISP](https://www.gnu.org/software/clisp/): bytecode interpreter, last release was in 2010 but
|
||||
it is still in active development.
|
||||
- [GCL](https://www.gnu.org/software/gcl/) (GNU Common Lisp): GNU's Common Lisp compiler, based in Kyoto Common Lisp (KCL).
|
||||
- [ECL](https://ecl.common-lisp.dev/) (Embeddable Common Lisp): compiler, also derived from KCL.
|
||||
- [CCL](https://ccl.clozure.com/) (Closure Common Lisp).
|
||||
- ...
|
||||
|
||||
## Examples
|
||||
```lisp
|
||||
(princ "Hello, World!")
|
||||
```
|
||||
TODO
|
||||
|
||||
## Resources
|
||||
- Common Lisp HyperSpec: HTML rendition of the Common Lisp ANSI standard, can be
|
||||
found here: <https://www.lispworks.com/documentation/HyperSpec/Front/> with some
|
||||
better looking versions here: <https://novaspec.org/cl/> and <https://cl-community-spec.github.io/pages/index.html>.
|
Loading…
Add table
Reference in a new issue