AI 仓库情报摘要
FR-AI / ANALYSIS为什么值得关注
使 Clojure 开发者能够利用 Emacs 的可扩展性,同时保持接近原生的性能和与 Emacs Lisp 的无缝互操作。
适合谁使用
- 偏好 Clojure 语法的 Emacs 用户
- 编写 Emacs 包或配置的开发者
- 希望将 Emacs 作为编辑器的 Clojure 程序员
- 寻求更现代语法的 Elisp 开发者
典型使用场景
- 使用类似 Clojure 的语法编写 Emacs 配置文件
- 使用 Clojure 风格的函数和宏开发 Emacs 包
- 利用 Clojure 的线程宏和析构快速原型化 Emacs Lisp 代码
- 在混合语言项目中进行 Clojure 与 Emacs Lisp 的互操作
项目优势
- 快速编译和缓存(热缓存加载约 1.9ms,对比纯 Elisp 的 1.0ms)
- 双向互操作:cljbang 中定义的函数可从 Elisp 调用,反之亦然
- 支持许多 Clojure 核心函数、带语法引用的宏、析构和命名空间管理
- 集成 clj-kondo 进行 lint 检查并提供 Emacs 模式支持内联求值
使用前须知
- 不是完整的 Clojure 实现:缺少协议、多重方法和某些读取器形式
- 集合操作(map、filter、assoc)由于包装开销和复制而较慢
- 由于直接互操作,需要理解 Emacs Lisp 的语义(如除法、真值判断)
README 快速开始
Installation
项目描述
A Clojure-like language that runs as Emacs Lisp.