Releases: BuddhiLW/clojure-elisp
Releases · BuddhiLW/clojure-elisp
v0.5.0
What's Changed
- v0.4.1: Module system, incremental compile, Babashka CLI by @BuddhiLW in #5
- v0.4.2: Fix macro registry arity mismatch in compile-project by @BuddhiLW in #6
- feat: module system, bb CLI, regression test suite by @BuddhiLW in #7
- release: v0.5.0 by @BuddhiLW in #8
Full Changelog: v0.4.1...v0.5.0
v0.4.0
Full Changelog: v0.3.2...v0.4.0
v0.3.1
Full Changelog: v0.2.0...v0.3.1
v0.3.0
v0.2.0
Changes
- 4e1fd47 Merge pull request #3 from BuddhiLW/release/v0.1.0
- b6c2a59 feat: Add Result ADT, property tests, and CI/CD pipeline
- 7b140a9 docs: Add DDD/SOLID/CLARITY refactoring plan
- 29bf16b feat: Add multi-binding for/doseq with modifiers (clel-045)
- f8297e9 feat: Add transducers, sets, and sequence functions (clel-041,043,044)
- e9269f3 feat(strings): Add clojure.string namespace functions (clel-042)
- 54cae8c feat(iteration): Add for list comprehension (clel-039)
- 674c317 feat(runtime): Add iteration forms, nested data, seq generators, accessors
- e3d363c feat(examples): Add hive-mcp-eca.cljel example with tests (clel-034)
- 4a595b7 feat(examples): Add hive-mcp-log.cljel port (clel-024)
- fdd3d1c feat(interop): Add Emacs buffer/process interop layer (clel-031)
- 2be4b73 docs: Update progress log with clel-020 and clel-025
- 4e5b1bc feat(runtime): Add string operation functions (clel-034)
- a8a148e test(emitter): Add sequence function emission tests (clel-029)
- f85fc6d feat(analyzer,emitter): Add extend-type, extend-protocol, satisfies?, reify (clel-025)
- 605aeb4 feat(core): Add source location tracking with LineNumberingPushbackReader (clel-020)
- 7b291b7 feat(analyzer,emitter): Add define-minor-mode and with-eval-after-load (clel-032, clel-033)
- 907884e feat(analyzer,emitter): Add defgroup and defcustom for Emacs customize (clel-030, clel-031)
v0.1.0 — First Release
ClojureElisp v0.1.0
First release of ClojureElisp — a Clojure dialect that compiles to Emacs Lisp.
Highlights
- Full compiler pipeline: Reader → Analyzer → Emitter, producing valid Elisp with
lexical-binding: t - Rich language support:
defn,fn,let,if/when/cond/case,loop/recur,try/catch/finally,defmacro,defprotocol/defrecord/deftype,defmulti/defmethod,lazy-seq, atoms with watchers - 100+ core function mappings: arithmetic, collections, sequences, predicates, strings, higher-order functions
- 55+ runtime functions in
clojure-elisp-runtime.elimplementing Clojure semantics in Elisp - Namespace system:
nswith:require/:as/:refer, namespace-prefixed definitions, dependency-aware project compilation with topological sort - Macro system:
defmacrowith compile-time expansion, syntax-quote/unquote,macroexpand-1/macroexpand - Destructuring: vector and map patterns in
let,fn,defnparams —:keys,:as,:or,& rest - Elisp interop:
.methoddot-notation,elisp/fnnamespace,.-propertyaccess - Emacs integration:
clojure-elisp-modemajor mode for.cljelfiles, nREPL/CIDER middleware - Source location tracking with optional
;;; L<line>:C<col>comments
Test Coverage
160 tests, 900+ assertions, 0 failures.
Requirements
- Clojure 1.12+
- Emacs 28.1+ (for compiled output)