/awesome-clojure-likes

Curated list of Clojure-like programming languages.

Mapping the constellation of Clojure-like programming languages.

Contribute. More.

Official variants

Clojure-likes

Hy is a wonderful dialect of Lisp that’s embedded in Python.

  • Try it.
  • High level of interop with host language.
  • All of available Python tooling available.
  • Actively developed.

Clojure implemented on the Erlang VM.

  • Try it.
  • Source code on GitHub.
  • Interoperability as smooth as possible, just like Clojure proper and ClojureScript do.
  • Provide most Clojure abstractions.
  • Provide all Erlang abstractions and toolset.
  • Include a default OTP library in Clojerl.

A functional, statically-typed Lisp that will run on several platforms, such as the Java Virtual Machine and JavaScript interpreters.

  • Implemented in Clojure.
  • Inspied by Haskell, Clojure, ML.
  • Actively developed.

A functional programming language that expands into JavaScript through a very thin layer of sweet.js macros.

  • Implemented in Javascript
  • Intermix LISP code with JavaScript.

A little Clojure-like LISP in JavaScript.

  • Try it
  • Native JavaScript types and function calls.
  • Maintenance mode.

A small, fast, native lisp with "magical" powers.

  • Implemented in RPython.
  • Runs on own VM.

A Hard Real-Time Clojure for Lisp Machines.

  • Implemented in Clojure.
  • Compiles to ISO C++11.
  • Restricted subset of Clojure.
  • Embedded systems focus.

A Clojure dialect that compiles to native executable using the Clang compiler.

  • Self hosted.

Clojure-inspired Lisp that transpiles to Ruby.

  • Implemented in Ruby.
  • Tries to cover Ruby's functionality with more concise code forms.

Modern Lisp variant inspired by Python, Clojure & Arc.

  • Implemented in C++.
  • Modern, OO, both statically & dynamically typed.

TimL is a Lisp dialect implemented in and compiling down to VimL, the scripting language provided by the Vim text editor.

  • Implemented in Vim's scripting language.
  • Dormant project.

Apricot is a programming language inspired by Clojure and Lisp that runs on the Rubinius VM.

  • Implemented in Ruby.
  • Dormant project.

A functional programming language and interpreter written in GNU Bash 4.

  • Implemented in Bash 4.
  • Dormant project.

An OCaml compiler for an untyped lisp.

  • Implemented in OCaml.
  • Runs on the LLVM JIT.
  • Dormant project.

Mal is a Clojure inspired Lisp interpreter. Mal is implemented in 63 languages.

Notable/usable implementations follow.

Mal (Make A Lisp) compiler

  • Compiler for Mal, written in Mal itself.
  • Compiles a Mal program to LLVM assembly language (IR), and then uses the LLVM optimizer, assembler and gcc linker to produce a binary executable.

A Delightfully Diminutive Lisp. Implemented in < 1 KB of JavaScript with JSON source.

  • Implemented in PHP.
  • Interop with & runs where PHP does.
  • Implements the #mal IRC bot.