Files
bara-lang/docs
dimgigov 19ef69bf5b Phase 6: slurp, spit, read-line, range 3-arg, repeat/cycle/iterate, interleave
Phase 6 Clojure Core Library now complete (except meta):
- T6.3: slurp (alias for file/read)
- T6.4: spit (alias for file/write)
- T6.5: read-line (stdin input)
- T6.6: range with 3 args (start, end, step)
- T6.7: repeat, cycle, iterate (eager implementations)
- T6.9: interleave
- Updated TASKS.md and ROADMAP.md
2026-05-08 19:24:06 +03:00
..

Clojure/Nim

Диалект на Clojure, който се компилира до Nim, после до C, и накрая до native бинарен файл.

Какво е това?

Clojure/Nim е AI-first имплементация на езика Clojure за екосистемата на Nim. Вместо да работи върху JVM или JavaScript, компилира Clojure код директно до Nim, оттам до C, и накрая до native бинарен файл.

Защо?

  • Native Performance: Компилира се до C през Nim. Без JVM warmup, без GC паузи.
  • Малки Бинарни Файлове: Единични изпълними файлове, често под 1MB.
  • Nim Ecosystem: Директен достъп до Nim и C библиотеки през FFI.
  • AI-Native: Построен за AI агенти, работещи в терминал — структуриран JSON REPL, batch evaluation, git интеграция.

Бърз Старт

# Клониране
git clone https://gitlab.com/balvatar/lisp-nim.git
cd lisp-nim

# Изграждане
make build

# Изпълнение на файл
./cljnim run examples/hello.clj

# Човешки REPL
./cljnim repl

# AI REPL (JSON режим)
./cljnim repl --json

Примери

Hello World

;; examples/hello.clj
(println "Здравей, Nim свят!")
(println (+ 1 2 3))
$ ./cljnim run examples/hello.clj
Здравей, Nim свят!
6

Функции и Рекурсия

;; examples/math.clj
(defn square [x]
  (* x x))

(defn factorial [n]
  (if (= n 0)
    1
    (* n (factorial (- n 1)))))

(let [a 5]
  (println (square a))
  (println (factorial a)))
$ ./cljnim run examples/math.clj
25
120

AI-First REPL

Clojure/Nim е построен за AI агенти. JSON REPL предоставя структуриран I/O, идеален за програмно взаимодействие.

$ ./cljnim repl --json
{"status":"ready","ns":"user","mode":"json"}

> {"op":"eval","form":"(+ 1 2 3)"}
{"status":"ok","result":{"printed":"6"},"meta":{"ms":861}}

> {"op":"eval","form":"(defn square [x] (* x x))"}
{"status":"ok","result":{"type":"var","name":"square"}}

> {"op":"eval","form":"(square 5)"}
{"status":"ok","result":{"printed":"25"}}

> {"op":"quit"}
{"status":"ok","bye":true}

Документация

Документ Описание
GUIDE.bg.md Ръководство за потребителя
ARCHITECTURE.bg.md Архитектура и дизайн
AI_FIRST.bg.md AI-first философия
API.bg.md REPL API референция
ROADMAP.bg.md Пътна карта за разработка

Лиценз

MIT License — вижте LICENSE.