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 関数を扱っており、これらのインターフェイスを 1 つずつ手動で作成すると、かなり時間がかかります...

もちろん、この作成を行うためのアドホック ツールを作成することはできますが (おそらく CIL を使用して..)、車輪の再発明はしたくありません。

だから私の質問は:

C 関数から Prolog 呼び出し可能なインターフェイスを自動的に生成できるツールはありますか?

4

0 に答える 0