百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
S

scryer-prolog

> 编程语言
开源

一个现代的 Prolog 实现,主要使用 Rust 编写。

2.4K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

一个现代的 Prolog 实现,主要使用 Rust 编写。

Scryer Prolog

Scryer Prolog 的目标是成为 ISO Prolog,就像 GHC 对 Haskell 一样:一个开放的编译器。 源头工业级的生产环境,这也是 用于逻辑和约束边缘研究的测试平台 编程,而编程本身又用高级语言编写。 Scryer Prolog 通过了所有测试 语法一致性, variable_names/1 和 dif/2。 该项目的主页为: https://www.scryer.pl**

第 1 阶段

在 Rust 中实现 Warren 抽象机,完成 根据 [Warren 的摘要] 中的语言演进过程 机器: 一个教程式重建](https://github.com/mthom/scryer-prolog/blob/master/wambook/wambook.pdf)。

第 1 阶段已经完成,Scryer Prolog 以某种形式实现了 WAM 书中的所有内容,包括列表、剪枝、Debray 分配、第一个参数索引、最后一次调用优化和联合查询。

  • 将 N 称为内置元函数。 - [x] ISO Prolog 兼容的 throw/catch。 - [x] 所有固定性的内置和用户定义的运算符,具有自定义的关联性和优先级。 - [x] 大整数、有理数和浮点运算。 - [x] 内置的控制运算符(,,;,-> 等)。 - [x] 修订过的、不太糟糕的模块系统。 - [x] 用于列表处理和顶层声明式控制的内置谓词(setup_call_cleanup/3、call_with_inference_limit/3 等)。 - [x] 字符串的默认表示为字符列表,使用压缩的内部表示。 - [x] term_expansion/2 和 goal_expansion/2。 - [x] 确定公式语法。 - [x] 使用 SICStus Prolog 接口和语义的带属性的变量。 使用带属性的变量,添加协程,如 dif/2、freeze/2 等是非常简单的。 - [x] 支持 verify_attributes/3 - [x] 支持 attribute_goals/2 和 `project_attri

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rustiso-prolog-standardprologprolog-implementationprolog-interpreter

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言