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

是否有任何工具可以从C函数自动生成Prolog可调用接口?,prolog,gnu-prolog,Prolog,Gnu Prolog,基本上,我使用Prolog调用大量的C函数,使用gnuprolog 以下是一个例子: 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); } 因此,我正在处理大量的C函数,手动一个接一个地创建

基本上,我使用Prolog调用大量的C函数,使用gnuprolog

以下是一个例子:

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);
}
因此,我正在处理大量的C函数,手动一个接一个地创建这些接口将非常耗时

当然,我可以使用CIL编写一个特别的工具来完成这项工作,但我只是不想重新发明轮子

所以我的问题是:

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

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