0

我想将 Prolog 与 PHP 一起使用。可能吗?

4

4 回答 4

3

总是有exec-family函数来执行/生成另一个进程。

于 2009-08-19T09:26:17.613 回答
2

如上所述,您可以执行 Prolog 解释器或二进制文件。但是,大多数 Prolog 实现还导出了一个 C API,可用于调用 Prolog 解释器。

您可以创建一个小的 PHP 模块来启动解释器并执行查询。例如,SICStus 文档详细描述了使用 C 中的 Prolog:

于 2009-09-28T22:24:02.357 回答
1

大多数 Prolog 允许将 prolog 代码编译成二进制文件。您可以尝试使用已经提到的某种进程调用从 PHP 中调用此二进制文件。

于 2009-08-20T01:25:35.497 回答
1

写了一个翻译器,可以将一些简单的 PHP 程序转换成 Prolog,反之亦然

这是一个可能的输入程序:

function is_greater_than($a,$b){
    return $a > $b;
}
function is_an_animal($a){
    return in_array($a,["dog","cat"]);
}

...这是输出程序:

is_greater_than(A,B) :- 
    A>B. 
is_an_animal(A) :- 
    member(A,["dog","cat"]).

这个翻译器只是一个概念验证,但它仍然可以更容易地将一些简单的 PHP 程序转换为 Prolog。

于 2017-10-10T05:11:26.283 回答