jank:跑在 C++ 上的 Clojure,模板、虚函数、RAII 全都直接用
来源:jank-lang.org — 2026-10-24
📋 概述
jank 是一个原生 Clojure 方言,把 Java 互操作换成了 C++ 互操作:模板、虚函数、异常、重载决议和 RAII 都能直接在 Clojure 代码里用,include 头文件就能开工。它基于 Clang 的 C++ JIT 提供 REPL 驱动的开发体验,用 nREPL 接你现有的编辑器插件;工程管理借用 Leiningen,依赖声明一行搞定,构建系统能自己找系统里已装的 C/C++ 库或从源码构建。作者推荐的场景是游戏开发:函数式不可变数据 + REPL,需要性能时随时用 cpp/ 调进 C++。
🔑 核心要点
- 互操作是零胶水的:不用注册函数或类型、不用编组、不用回调,直接 include 头文件。
- REPL 体验靠 Clang 的 C++ JIT,不是解释执行——边跑边编译 C++。
- 工程管理仿 Cargo/Leiningen:依赖一行,native 依赖能自动发现或源码构建。
- 示例里直接用 boost::filesystem 与 GLFW + ImGui 写窗口程序,异常能跨语言 catch。
💡 金句
jank is Clojure on top of C++. It has C++ interop unlike any other language.
👍 0
👎 0
← 返回 Hacker News 首页