Hacker News | 📄 原文链接 | 2026-10-28 收录

OpenLDK:把整个 Java 世界搬进 Common Lisp

来源:atgreen.github.io — 2026-10-25

📋 概述

作者早年在 gcj(GNU 的 Java 编译器)上工作过,如今主要写 Common Lisp。2024 年底他想让 SBCL 直接使用 Java 库,找不到合适的集成方式,于是决定写一个 Lisp 版的 JVM 字节码处理器。OpenLDK 读 Java 字节码,翻译成 Lisp,交给 SBCL 编译成原生机器码,Java 对象与 Lisp 应用共用同一进程与堆。Java 类变成 CLOS 类,字段变成 slot,实例方法变成按 JVM 签名区分的泛型函数方法,异常体系映射成 Lisp condition;类加载时只装桩,首次调用才编译,编译结果进持久代码缓存。结果是七种 JVM 语言能在同一个 Lisp 表达式里各自用原生语法接力,初始化好的 Spring Boot 应用存进 Lisp 镜像后约 84 毫秒启动。

🔑 核心要点

💡 金句

An initialized Spring Boot application can be saved in a Lisp image and launched again in about 84 milliseconds.
← 返回 Hacker News 首页