# Clojure/Nim > A Clojure dialect that compiles to Nim → C → native binaries. [![Tests](https://img.shields.io/badge/tests-276%2B-green)]() [![Nim](https://img.shields.io/badge/nim-%3E%3D2.0-blue)]() [![License](https://img.shields.io/badge/license-MIT-yellow)]() ## Quick Start ```bash git clone https://gitlab.com/balvatar/lisp-nim.git cd lisp-nim make build make check ./cljnim run examples/hello.clj ``` ## Documentation - **[English](docs/en/index.md)** — Getting started, architecture, AI integration, API reference - **[Български](docs/bg/index.md)** — Първи стъпки, архитектура, AI интеграция, API справочник ## What is this? Clojure/Nim is an **AI-first** Clojure implementation targeting the Nim ecosystem. It compiles Clojure source directly to Nim, then to C, and finally to a native binary. ### Why? - **Native Performance** — No JVM warmup, no GC pauses - **Tiny Binaries** — Single-file executables, often under 1MB - **Nim Ecosystem** — Direct access to Nim and C libraries via FFI - **AI-Native** — JSON REPL, batch evaluation, AI-assisted error messages and code generation ## Key Features | Feature | Status | |---------|--------| | Compiler (Clojure → Nim → C → native) | ✅ | | REPL with JSON protocol | ✅ | | Macro system (`defmacro`, `syntax-quote`, `->`, `->>`) | ✅ | | Persistent data structures (HAMT vector/map) | ✅ | | Atoms, Agents, Channels | ✅ | | `loop`/`recur` | ✅ | | `try`/`catch`/`finally` | ✅ | | AI integration (DeepSeek, OpenAI, MiMo) | ✅ | | Cross-compilation targets (JS, WASM, shared libs) | ✅ | | 276+ tests | ✅ | ## Example ```clojure ;; examples/math.clj (defn factorial [n] (if (= n 0) 1 (* n (factorial (- n 1))))) (println (factorial 5)) ;; => 120 ``` ```bash $ ./cljnim run examples/math.clj 120 ``` ## AI-Powered Development ```bash export DEEPSEEK_API_KEY="sk-..." ./cljnim ai "function that sums a list using loop/recur" ``` See [docs/en/03-ai-integration.md](docs/en/03-ai-integration.md) for details. ## License MIT — see [LICENSE](LICENSE)