外部精选
软件工程
#开发者实时流开发者用C语言实现ZIP风格Prolog虚拟机,作为trilog潜在后端
来源标题:A ZIP-style Prolog VM for trilog
开发者构建了一个用C语言实现的ZIP虚拟机及配套Prolog编译器,目标是将VM搭建到可与现有trilog运行时对比的程度。zipc编译器用Prolog编写、运行于Scryer Prolog,生成二进制镜像后由src/中的VM加载执行。若MVP验证成功,zipc将成为trilog的后端,通过将子句编译为ZIP指令来减少指令数和内存占用。
Hacker News 最新triska2026/11/9 · 今天2 分钟阅读
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
这个项目的目标是把虚拟机搭建到一定程度,以便与当前的 trilog 运行时进行比较。
一个从 Prolog 到 ZIP 虚拟机的编译器,以及虚拟机本身,均用 C 编写。ZIP 是 Clocksin 的 Design and Simulation of a Sequential Prolog Machine(1984)中提出的抽象机;相关论文在 doc/ 目录下。如果 MVP 成功,zipc 打算成为 trilog 的后端,或者就保持为一个更快的独立 Prolog 可编译运行时,我目前还不太确定。无论哪种方式,trilog 用 ABC 算法把子句当作项来解释,而将它们编译到 ZIP 应该能让同样的程序以更少的指令和更少的内存运行,这应该有助于 trilog 的主要目标。
编译器用 Prolog 编写,运行在 Scryer Prolog 上。它写出一个二进制映像,src/ 中的虚拟机加载并运行该映像。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。