用于执行Prolog的抽象机器的比较

时间:2014-05-17 13:17:31

标签: prolog abstract-machine warren-abstract-machine

我正在寻找研究论文或任何其他出版物来比较不同的抽象机器(不止一个)来执行Prolog,而不是基于抽象机器的prolog解释器。到目前为止我所看到的是,虽然提出了其他抽象机器(例如Warren Abstract MachineVienna Abstract Machine),但大多数实现似乎都是基于Tree-Oriented Abstract Machine的prolog解释器。没有任何一般的比较。我对效率的比较感兴趣( not 功能),尽管所有比较的解释器都应该允许约束逻辑编程。

1 个答案:

答案 0 :(得分:3)

您可以在普通的prolog之上构建约束逻辑编程 如果你为一个牵引的约束商店引入了一些原语 统一钩子的一些原语。 E.g:

SICStus Prolog:归因变量
http://sicstus.sics.se/sicstus/docs/3.7.1/html/sicstus_17.html

Jekejeke Minlog:Little Solver
http://www.jekejeke.ch/idatab/doclet/prod/en/docs/15_min/10_docu/02_reference/04_examples/05_solver.html
http://www.jekejeke.ch/idatab/doclet/prod/en/docs/15_min/15_stdy/06_bench/10_examples/02_addensure/01_referensure.p.html

当然,您可以将其他原语视为新指令 在抽象机器中。但在两种情况下,基元都是 在谓词级别添加,以便它是否存在问题 实际上需要一个用于约束逻辑编程的抽象机器。

当然,您会发现一些约束逻辑编程的建议 抽象机器以及谷歌。

再见