https://github.com/damon-kwok/awesome-lisp-family
A list of LISP Family
https://github.com/damon-kwok/awesome-lisp-family
List: awesome-lisp-family
Last synced: 3 months ago
JSON representation
A list of LISP Family
- Host: GitHub
- URL: https://github.com/damon-kwok/awesome-lisp-family
- Owner: damon-kwok
- License: bsd-2-clause
- Created: 2021-12-13T09:11:04.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-07-12T06:49:26.000Z (over 2 years ago)
- Last Synced: 2024-05-22T21:00:48.489Z (9 months ago)
- Size: 70.3 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- ultimate-awesome - awesome-lisp-family - A list of LISP Family. (Other Lists / Julia Lists)
README
![]()
[](https://www.patreon.com/DamonKwok)
[](https://www.markdownguide.org/)
[](https://github.com/damon-kwok/awesome-lisp-family/blob/main/COPYING)
[](https://www.patreon.com/DamonKwok)# Awesome LISP Family
A list of lisp-flavored programming languages implemented on top of existing programming languages.
## Classification
- **Type-A**: Simple syntax mapping
*These languages usually just provide s-expressions (parentheses) syntax and are translated to the target language without extra features/semantics. Also sometimes being called transpilers.*- **Type-B**: Syntax and additional semantics
*In addition to translating the syntax some additional features/semantics that are not present in the target language are added. Usually if a language does not fit in other category, it can be considered being a Type-B.*- **Type-C**: [Clojure](https://clojure.org/)-like
*Distintive syntax that besides parentheses also uses brackets and curly braces. Distinctive features are persistent data structures, namespaces and vars, protocols.*- **Type-L**: [Common Lisp](https://en.wikipedia.org/wiki/Common_Lisp)
*Implementing ANSI Common Lisp standard or being inspired by it.*- **Type-S**: [Scheme](https://en.wikipedia.org/wiki/Scheme_%28programming_language%29)
*Implementing some of RxRS standards or being inspired by Scheme.*## Languages
Listed primarily by the language which can be used for interoperability / [FFI](https://en.wikipedia.org/wiki/Foreign_function_interface).
*Language section does not necessarily mean the language of the implementation. For example `Ferret` compiles into `C++` but the compiler is written in `Clojure`. Or `Carp` interops with `C` but it is mostly written in `Haskell`. In case of `SBCL` it contains only small amounts of `C`, but it is implemented almost entirely in `Common Lisp`.*
- [Multi Lang](#multi-lang)
- [Cobol](#cobol)
- [Common Lisp](#common-lisp)
- [Scheme](#scheme)
- [C/C++](#cc)
- [C#](#c)
- [Elm](#elm)
- [Erlang](#erlang)
- [Fortran](#fortran)
- [Go](#go)
- [Haskell](#haskell)
- [Java](#java)
- [JavaScript](#javascript)
- [Julia](#julia)
- [Lua](#lua)
- [Objective-C](#objective-c)
- [OCaml](#ocaml)
- [PHP](#php)
- [Perl](#perl)
- [Python](#python)
- [R](#r)
- [Rust](#rust)
- [Shell](#shell)
- [VHDL](#vhdl)
- [WASM](#wasm)### Multi Lang
| Name | Active | Type | Target |
|----------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Lux](https://github.com/LuxLang/lux) | [](https://github.com/LuxLang/lux) | B | |
| [Mal](https://github.com/kanaka/mal) | [](https://github.com/kanaka/mal) | *1 | |
| [STELLA](https://www.isi.edu/isd/LOOM/Stella/index.html) | | ? | |
| [Wax](https://github.com/LingDong-/wax) | [](https://github.com/LingDong-/wax) | * | |
| [Shen](https://shen-language.github.io/) | [](https://github.com/Shen-Language/shen-cl) | B | |
| [Zick Standard Lisp](https://github.com/zick/ZickStandardLisp) | [](https://github.com/zick/ZickStandardLisp) | ? | |### Cobol
| Name | Active | Type | Target |
|----------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Cisp](https://github.com/lauryndbrown/Cisp) | [](https://github.com/lauryndbrown/Cisp) | L | |### Common Lisp
| Name | Active | Type | Target |
|----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [SBCL](http://www.sbcl.org) | [](https://github.com/sbcl/sbcl) | L | |
| [Clasp](https://github.com/clasp-developers/clasp) | [](https://github.com/clasp-developers/clasp) | L | |
| [ECL](https://common-lisp.net/project/ecl/) | [](https://gitlab.common-lisp.net/ecl/ecl) | L | |
| [CLISP](https://clisp.sourceforge.io/) | [](https://github.com/roswell/clisp) | L | |
| [Clozure CL](https://ccl.clozure.com/) | [](https://github.com/Clozure/ccl) | L | |
| [Coalton](https://coalton-lang.github.io/) | [](https://github.com/coalton-lang/coalton) | L | |See list of [additional implementations](https://www.cliki.net/Common+Lisp+implementation).
### Scheme
| Name | Active | Type | Target |
|------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Racket](https://racket-lang.org/) | [](https://github.com/racket/racket) | S | |
| [STklos](https://stklos.net/index.html) | [](https://github.com/egallesio/STklos) | S | |
| [Bigloo](https://www-sop.inria.fr/mimosa/fp/Bigloo/) | [](https://github.com/manuel-serrano/bigloo) | S | native |
| [Gerbil](https://cons.io/) | [](https://github.com/vyzo/gerbil) | S | |
| [Gauche](https://practical-scheme.net/gauche/) | [](https://github.com/shirok/Gauche) | S | |
| [Chibi-Scheme](https://synthcode.com/wiki/chibi-scheme) | [](https://github.com/ashinn/chibi-scheme) | S | |
| [Gambit](http://gambitscheme.org/) | [](https://github.com/gambit/gambit) | S | |
| [Guile](https://www.gnu.org/software/guile/) | [](https://gitlab.com/guile-git/guile-git) | S | |
| [Loko Scheme](https://gitlab.com/weinholt/loko) | [](https://gitlab.com/weinholt/loko) | S | |
| [Cisco Chez](https://www.scheme.com/) | [](https://github.com/cisco/ChezScheme) | S | |
| [Racket Chez](https://github.com/racket/ChezScheme) | [](https://github.com/racket/ChezScheme) | S | |
| [Rabbit](https://github.com/udem-dlteam/ribbit) | [](https://github.com/udem-dlteam/ribbit) | S | |
| [CHICKEN Scheme](https://www.call-cc.org/) | [](https://github.com/spurious/chicken-core-mirror) | S | |
| [Cyclone](https://justinethier.github.io/cyclone/) | [](https://github.com/justinethier/cyclone) | S | |
| [Microscheme](https://ryansuchocki.github.io/microscheme/) | [](https://github.com/ryansuchocki/microscheme) | S | |
| [Vicare](https://marcomaggi.github.io/vicare.html) | [](https://github.com/marcomaggi/vicare) | S | |
| [Ikarus](https://launchpad.net/ikarus) | [](https://github.com/hyln9/ikarus) | S | |See list of [additional implementations](http://community.schemewiki.org/?scheme-faq-standards#implementations) and [benchmarks](https://ecraven.github.io/r7rs-benchmarks/).
[The Development of Chez Scheme](https://legacy.cs.indiana.edu/~dyb/pubs/hocs.pdf)
### C/C++
| Name | Active | Type | Target |
|--------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Janet](https://janet-lang.org/) | [](https://github.com/janet-lang/janet) | B | |
| [Cakelisp](https://github.com/makuto/cakelisp) | [](https://github.com/makuto/cakelisp) | A | |
| [Dale](https://github.com/tomhrr/dale) | [](https://github.com/tomhrr/dale) | B | |
| [Owl Lisp](https://gitlab.com/owl-lisp/owl) | [](https://gitlab.com/owl-lisp/owl) | S | |
| [jo_clojure](https://gitlab.com/Zelex/jo_clojure) | [](https://gitlab.com/Zelex/jo_clojure) | C | |
| [Extempore](https://github.com/digego/extempore) | [](https://github.com/digego/extempore) | S | |
| [Maru](https://www.piumarta.com/software/maru/) | [](https://github.com/attila-lendvai/maru) | B | |
| [Liz](https://github.com/dundalek/liz) | [](https://github.com/dundalek/liz) | A | |
| [Toccata](https://github.com/Toccata-Lang/toccata) | [](https://github.com/Toccata-Lang/toccata) | C | |
| [Lcc](https://github.com/saman-pasha/lcc) | [](https://github.com/saman-pasha/lcc) | A | |
| [PicoLisp](https://picolisp.com) | [](https://github.com/picolisp/picolisp) | B | |
| [Ferret](https://ferret-lang.org/) | [](https://github.com/nakkaya/ferret) | C | |
| [C-Mera](https://github.com/kiselgra/c-mera) | [](https://github.com/kiselgra/c-mera) | A | |
| [FemtoLisp](https://github.com/JeffBezanson/femtolisp) | [](https://github.com/JeffBezanson/femtolisp) | S | |### C#
| Name | Active | Type | Target |
|--------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Clojure-CLR](https://github.com/clojure/clojure-clr) | [](https://github.com/clojure/clojure-clr) | C | |
| [IronScheme](https://github.com/IronScheme/IronScheme) | [](https://github.com/IronScheme/IronScheme) | S | |
| [Arcadia](https://arcadia-unity.github.io/) | [](https://github.com/arcadia-unity/Arcadia) | C | |### Elm
| Name | Active | Type | Target |
|----------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Enclojure](https://github.com/temochka/enclojure) | [](https://github.com/temochka/enclojure) | C | |### Erlang
| Name | Active | Type | Target |
|---------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Lisp Flavored Erlang](http://lfe.io/) | [](https://github.com/lfe/lfe) | A2 | |
| [Joxa](http://joxa.org/) | [](https://github.com/joxa/joxa) | A1 | |
| [Clojerl](https://github.com/clojerl/clojerl) | [](https://github.com/clojerl/clojerl) | C | |
| [Kapok](http://kapok-lang.org/) | [](https://github.com/kapok-lang/kapok) | C | |
| [scm](http://the-concurrent-schemer.github.io/scm-doc/) | [](the-concurrent-schemer/scm) | S | |### Fortran
| Name | Active | Type | Target |
|---------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------|------|--------|
| [fscheme](https://genepi.qimr.edu.au/Staff/davidD/Scheme/SIOM.html) | | S | |
| [Schemetran](https://gitlab.com/codetk/schemetran) | [](https://gitlab.com/codetk/schemetran) | A | |### Go
| Name | Active | Type | Target |
|----------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Joker](https://joker-lang.org/) | [](https://github.com/candid82/joker) | C | |
| [Slick](https://github.com/pcostanza/slick) | [](https://github.com/pcostanza/slick) | L | |
| [Zygo](https://github.com/glycerine/zygomys) | [](https://github.com/glycerine/zygomys) | B | |
| [ZYLISP](https://github.com/zylisp/zylisp) | [](https://github.com/zylisp/zylisp) | A | |### Haskell
| Name | Active | Type | Target |
|--------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Carp](https://github.com/carp-lang/Carp) | [](https://github.com/carp-lang/Carp) | B | |### Java
| Name | Active | Type | Target |
|--------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|------|--------|
| [ABCL](https://common-lisp.net/project/armedbear/) | [](https://github.com/armedbear/abcl) | L | |
| [Clojure](https://clojure.org/) | [](https://github.com/clojure/clojure) | C | |
| [Kawa](https://www.gnu.org/software/kawa/) | [](https://gitlab.com/kashell/Kawa) | S | |
| [Armed Bear Clojure](https://github.com/lsevero/abclj) | [](https://github.com/lsevero/abclj) | C+L | |
| [PicoLisp](https://picolisp.com) | [](https://github.com/picolisp/picolisp) | B | |### JavaScript
| Name | Active | Type | Target |
|--------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [BiwaScheme](https://www.biwascheme.org/) | [](https://github.com/biwascheme/biwascheme) | S | |
| [ClojureScript](https://clojurescript.org/) | [](https://github.com/clojure/clojurescript) | C | |
| [JACL](https://tailrecursion.com/JACL/) | | L | |
| [LIPS](https://lips.js.org) | [](https://github.com/jcubic/lips) | S | |
| [RacketScript](https://github.com/racketscript/racketscript) | [](https://github.com/racketscript/racketscript) | S | |
| [Valtan](https://github.com/cxxxr/valtan) | [](https://github.com/cxxxr/valtan) | L | |
| [Lumen](https://github.com/sctb/lumen) | [](https://github.com/sctb/lumen) | A | |
| [JSLisp](https://www.jslisp.org) | [](https://github.com/6502/JSLisp) | L | |
| [eslisp](https://github.com/anko/eslisp) | [](https://github.com/anko/eslisp) | A | |
| [Parenscript](https://common-lisp.net/project/parenscript/) | [](https://gitlab.common-lisp.net/parenscript/parenscript) | L | |
| [Wisp](https://github.com/Gozala/wisp) | [](https://github.com/Gozala/wisp) | C | |
| [Whalesong](https://www.hashcollision.org/whalesong/) | [](https://github.com/dyoo/whalesong) | S | |### Julia
| Name | Active | Type | Target |
|----------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [LispSyntax.jl](https://github.com/swadey/LispSyntax.jl) | [](https://github.com/swadey/LispSyntax.jl) | A | |### Lua
| Name | Active | Type | Target |
|----------------------------------------|---------------------------------------------------------------------------------------------------------------------|------|--------|
| [Fennel](https://fennel-lang.org/) | [](https://github.com/bakpakin/Fennel) | A | |
| [Lumen](https://github.com/sctb/lumen) | [](https://github.com/sctb/lumen) | A | |
| [Urn](https://urn-lang.com/) | [](https://github.com/SquidDev/urn) | ? | |### Objective-C
| Name | Active | Type | Target |
|----------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|------|--------|
| [nu](https://github.com/programming-nu/nu) | [](https://github.com/programming-nu/nu) | ? | |
| [DreamLisp](https://github.com/jsloop42/dreamlisp) | [](https://github.com/jsloop42/dreamlisp) | B | |### OCaml
| Name | Active | Type | Target |
|--------------------------------------------------|-------------------------------------------------------------------------------------------------------------------|------|--------|
| [Reason-Lisp](https://github.com/jaredly/myntax) | [](https://github.com/jaredly/myntax) | A | |### Perl
| Name | Active | Type | Target |
|-------------------------------------|---------------------------------------------------------------------------------------------------------|------|--------|
| [Bel](https://github.com/masak/bel) | [](https://github.com/masak/bel) | ? | |### PHP
| Name | Active | Type | Target |
|--------------------------------|-----------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Phel](https://phel-lang.org/) | [](https://github.com/phel-lang/phel-lang) | C | |### Python
| Name | Active | Type | Target |
|----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------|-------|--------|
| [Hy](https://github.com/hylang/hy) | [](https://github.com/hylang/hy) | A1+C* | |
| [Hissp](https://github.com/gilch/hissp) | [](https://github.com/gilch/hissp) | A | |
| [Pixie](https://github.com/pixie-lang/pixie) | [](https://github.com/pixie-lang/pixie) | B | |### R
| Name | Active | Type | Target |
|----------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|------|--------|
| [llr](https://github.com/dirkschumacher/llr) | [](https://github.com/dirkschumacher/llr) | C | |### Rust
| Name | Active | Type | Target |
|------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [GameLisp](https://gamelisp.rs) | [](https://github.com/fleabitdev/glsp) | B | |
| [ClojureRS](https://github.com/clojure-rs/ClojureRS) | [](https://github.com/clojure-rs/ClojureRS) | C | |
| [BLisp](https://ytakano.github.io/blisp/) | [](https://github.com/ytakano/blisp) | B | |
| [Ketos](https://github.com/murarth/ketos) | [](https://github.com/murarth/ketos) | B | |
| [Rustly](https://github.com/timothypratley/rustly) | [](https://github.com/timothypratley/rustly) | C | |### Shell
| Name | Active | Type | Target |
|--------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Fleck](https://github.com/chr15m/flk/) | [](https://github.com/chr15m/flk) | A | |
| [Gherkin](https://github.com/alandipert/gherkin) | [](https://github.com/alandipert/gherkin) | B | |### VHDL
| Name | Active | Type | Target |
|-------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------|------|--------|
| [VhdlLisp](https://github.com/domus123/vhdlisp) | [](https://github.com/domus123/vhdlisp) | ? | |### WASM
| Name | Active | Type | Target |
|------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|------|--------|
| [Liz](https://github.com/dundalek/liz) | [](https://github.com/dundalek/liz) | A | |
| [Schism](https://github.com/google/schism) | [](https://github.com/google/schism) | S | |
| [WASM Scheme](https://github.com/PollRobots/scheme) | [](https://github.com/PollRobots/scheme) | S | |
| [clj-wasm](https://github.com/roman01la/clj-wasm) | [](https://github.com/roman01la/clj-wasm) | A | |
| [Arboreta WASM](https://github.com/Arboreta/arboreta-wasm) | [](https://github.com/Arboreta/arboreta-wasm) | ? | |## Misc
- [Bel](http://paulgraham.com/bel.html) - self-hosted lisp dialect, see also markdown formatted [mirror](https://github.com/alephyud/bel)
- [Bel Clojure](https://github.com/stopachka/bel-clojure) - implementation in Clojure, includes continuations, Java numbers and strings, read [blog post](https://stopa.io/post/290)
- [Language::Bel](https://github.com/masak/bel) - implementation of Bel in Perl 5, includes extensive test suite
- [Chime](https://github.com/jeremyschlatter/chime/) - implementation of Bel written in Haskell
- [Babybel](https://github.com/cookrn/babybel) - Ruby implementation of Bel
- [Bel-sml](https://github.com/niyarin/bel-sml) - implementation written in Standard ML
- [uLisp](http://www.ulisp.com/) - Lisp for microcontrollers, fits into 2 Kbytes of RAM
- [CLJSL](https://github.com/IGJoshua/cljsl) - subset of Clojure compiled to GLSL for GPU programming
- A list of more [Clojure-like languages](https://github.com/chr15m/awesome-clojure-likes).
- Additional "write C in Lisp" [projects](https://www.reddit.com/r/lisp/comments/e10spm/a_list_of_various_lispflavored_programming/f8n6qxa/) (most of them not ready for a prime time).
- [Build your own lisp](http://www.buildyourownlisp.com/) - a book describing building a Lisp dialect
- See also list of languages [implemented in Lisp](https://github.com/vindarel/list-of-languages-implemented-in-lisp).
- [Map of Common Lisp implementations](https://twitter.com/dk_jackdaniel/status/698157022483771392/photo/1)
- [Benchmarks of Scheme implementations](https://ecraven.github.io/r7rs-benchmarks/)
- [awesome-lisp-languages](https://github.com/dundalek/awesome-lisp-languages)
- [awesome-lisp-companies](https://github.com/azzamsa/awesome-lisp-companies)
- [awesome-clojure](https://github.com/damon-kwok/awesome-clojure)## Contribute
Anything incorrect? Is there an interested project that is missing? Open an issue or PR to request adding a project to the list.