# jank **Repository Path**: mirrors_ingydotnet/jank ## Basic Information - **Project Name**: jank - **Description**: The native Clojure dialect hosted on LLVM with seamless C++ interop. - **Primary Language**: Unknown - **License**: MPL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-29 - **Last Updated**: 2026-02-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README jank banner

CI
# What is jank? Most simply, jank is a [Clojure](https://clojure.org/) dialect on LLVM with C++ interop. Less simply, jank is a general-purpose programming language which embraces the interactive, functional, value-oriented nature of Clojure and the desire for the native runtime and performance of C++. jank aims to be strongly compatible with Clojure. While Clojure's default host is the JVM and its interop is with Java, jank's host is LLVM and its interop is with C++. For the current progress of jank and its usability, see the tables here: https://jank-lang.org/progress/ The current tl;dr for jank's usability is: **still getting there, but not ready for use yet. Check back in a few months!** ## Docs * [Installing jank](./compiler+runtime/doc/install.md) * [Building jank](./compiler+runtime/doc/build.md) * [Using jank with Leiningen](./lein-jank/README.md) * [Using jank with Clojure CLI](./clojure-cli/README.md) ## Appetizer ```clojure ; Comments begin with a ; (println "meow") ; => nil ; All built-in data structures are persistent and immutable. (def george {:name "George Clooney"}) ; => #'user/george ; Though all data is immutable by default, side effects are adhoc. (defn say-hi [who] (println (str "Hi " (:name who) "!")) (assoc who :greeted? true)) ; Doesn't change george. (say-hi george) ; => {:name "George Clooney" ; :greeted? true} ; Many core functions for working with immutable data. (apply + (distinct [12 8 12 16 8 6])) ; => 42 ; Interop with C++ can happen *seamlessly*. (defn sleep [ms] (let [duration (c++/std.chrono.milliseconds ms)] (c++/std.this_thread.sleep_for duration))) ``` ## Sponsors If you'd like your name, company, or logo here, you can [sponsor this project](https://github.com/sponsors/jeaye) for at least $25/m.

Misha Karpenko

Bert Muthalaly

modulr-software

multiply.co

keychera

## In the news
| [
Clojure Conj 2023](https://www.youtube.com/watch?v=Yw4IAY4Nx_o)
| [
The REPL Interview](https://www.therepl.net/episodes/44/)
| [
Language Introduction](https://youtu.be/ncYlHfK25i0)
| [
Compiler Spotlight](https://compilerspotlight.substack.com/p/language-showcase-jank)
| | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-: | :-: |