1

所以基本上我使用 Prolog 来调用大量使用 GNU-Prolog 的 C 函数。

这是一个例子:

int add(int a, int b)
{
int res = a + b;

return res;
}

如果我想从 Prolog 代码中调用这个函数,我需要创建这个接口:

#include <gprolog.h>

 PlBool add_interface(int a, int b, int* r)
{
  *r = add(a, b);
}

在 Prolog 代码中,我需要添加以下内容:

 :- foreign(add(+integer, +integer, -integer)).

所以我在处理大量的C函数,并且一个一个地手动创建这些接口会非常耗时......

当然,我可以编写一个临时工具来进行此创建(可能使用 CIL ..),但我只是不想重新发明轮子。

所以我的问题是:

是否有任何工具可以从 C 函数自动生成 Prolog 可调用接口?

4

0 回答 0