javascript - Javascript 中的 Prolog 系统

标签 javascript compilation prolog iso-prolog transpiler

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。




9年前关闭。




Javascript 似乎作为其他编程语言的实现语言变得流行。
文章
Lightweight compilation of (C)LP to JavaScript. ICLP 2012
引起了我的注意。

网上有很多用 Javascript 编写的 Prolog 系统的概念验证原型(prototype)。

什么是当前的、积极维护的、最好是符合 ISO 标准的用 Javascript 编写的 Prolog 系统?

最佳答案

我知道的 JavaScript 中唯一的 Prolog 是 YieldProlog ,但我没有广泛尝试,只是 QueryEditor 中可用的代码.
我希望它比使用 yield 构造更轻量级(我在 C# 中广泛使用了这种构造,我发现它 - 与 lambda 配对 - 相当强大)。
但是当我(概括地)检查源时,我发现它非常复杂,尽管有假设。
编辑
我最近发现了这些贡献,看起来非常有趣:
proscriptproscript2 .
编辑
一个新的实现可用:
Tau Prolog ,从 Jan 在 SWI 邮件列表中引起了我的注意
编辑
新事物,hhprolog ,一个纯 Prolog 引擎,基于 Paul Tarau 提供的代码和文档,由我移植到 Javascript。因此,在浏览器和 NodeJS 中都可用。
该项目仍处于初步阶段,最需要的是引导解释器:现在(预)编译 Prolog 到(新型)虚拟机必须安装 SWI-Prolog,正确配置(需要 JPL)。
为了实现这样的引导,我可能需要实现否定,重用 Paul 的接口(interface),或者 - 更好地 - 尝试实现一些停留在纯范式中的东西。特别是,只有无界整数算术(同样由 Paul Tarau 提供,有一些 Python 代码可用 - 我会尝试懒惰地移植到 Javascript)。

关于javascript - Javascript 中的 Prolog 系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15435462/

相关文章:

prolog - 从跟踪中隐藏模块/包

javascript - 当我使用 firefox 时,textarea 上的灰色边框线

javascript - 使用 JavaScript 从 Wordpress 中通过 RSS 获取文章

python - 在 Mac Snow Leopard 上安装 MySQL-python-1.2.3c1 时出现问题

c++ - 如何在 C++ 中使用 mex.h

prolog - 限制整数在集合中

javascript - 使用 Twilio JS 客户端 API 时出现 JWT token 过期问题

javascript - Bootstrap 4下拉动画

java - Maven 依赖项不会导出到 jar 中

Prolog - 拉丁方解决方案