Clojure, but without the JVM?

This page summarizes the projects mentioned and recommended in the original post on /r/lisp

Our great sponsors
  • InfluxDB - Collect and Analyze Billions of Data Points in Real Time
  • Mergify - Updating dependencies is time-consuming.
  • SonarLint - Clean code begins in your IDE with SonarLint
  • babashka

    Native, fast starting Clojure interpreter for scripting

    Babashka: implemented with SCI, compiled to a native binary with GraalVM; quite compatible with the JVM Clojure, things like java.lang.System can be used without requiring a JVM. The corresponding reader conditional is :bb if present, :clj otherwise.

  • clojerl

    Clojure for the Erlang VM (unofficial)

    Clojerl: an implementation for the Erlang VM. The reader conditional is :clje.

  • InfluxDB

    Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.

  • lumo

    Fast, cross-platform, standalone ClojureScript environment

    If you want Clojure without the JVM, there are various packagings of ClojureScript, eg Lumo https://github.com/anmonteiro/lumo This requires installing npm which is roughly the same amount of pain as installing Clojure, but whatever works for you.

  • joker

    Small Clojure interpreter, linter and formatter.

    Joker: implemented in Go, emphasizes fast startup and readable error messages. The reader conditional is :joker.

  • hy

    A dialect of Lisp that's embedded in Python

    Hy: runs on top of Python, has Python-like semantics, but with Clojure-like metaprogramming

  • awesome-clojure-likes

    Curated list of Clojure-like programming languages.

    I really sympathize here, Clojure is such a cool kid. Unfortunately, I did not find a satisfying clojure-like langage, here is a good list of similar or inspired langages : https://github.com/chr15m/awesome-clojure-likes

  • ClojureCLR

    A port of Clojure to the CLR, part of the Clojure project

  • Mergify

    Updating dependencies is time-consuming.. Solutions like Dependabot or Renovate update but don't merge dependencies. You need to do it manually while it could be fully automated! Add a Merge Queue to your workflow and stop caring about PR management & merging. Try Mergify for free.

  • Fennel

    Lua Lisp Language

  • Carp

    A statically typed lisp, without a GC, for real-time applications.

  • cloture

    Clojure in Common Lisp

    Clojure on Common Lisp: https://github.com/ruricolist/cloture

  • lazy-seq

    Lazy sequences for Fennel and Lua (mirror)

    I believe there are more projects than that. I, personally, invest a lot of time into Fennel, as it's very minimal, and Lua runtime is very easy to extend as you like. I've implemented Clojure-like library for lazy sequences, and the cljlib - a library that ports a lot of functions and macros from clojure.core namespace.

  • fennel-cljlib

    Port of clojure.core namespace to Fennel (mirror)

    I believe there are more projects than that. I, personally, invest a lot of time into Fennel, as it's very minimal, and Lua runtime is very easy to extend as you like. I've implemented Clojure-like library for lazy sequences, and the cljlib - a library that ports a lot of functions and macros from clojure.core namespace.

  • janet

    A dynamic language and bytecode vm

    Janet: written in C, highly portable, can be easily compiled from source almost everywhere

  • planck

    Stand-alone ClojureScript REPL

    Planck: another standalone ClojureScript environment, runs on JavaScriptCore. Doesn't seem to have its own reader conditional, uses :cljs.

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts