-1

有人知道在 Xcode 中使用 Prolog 的库(最好不是 SWI-prolog)吗?如果不知道,您是否知道一个用于执行类似工作的更新语言的库?

谢谢

4

1 回答 1

0

我最近一直在使用 GNU Prolog (gprolog),它有一个非常简单的 C 接口,允许您生成由标准代码和您自己的代码组成的自定义可执行文件。

作为一名 Cocoa 程序员,我不确定您将如何集成代码,但“10.6 从 C 调用 Prolog”部分可能会给您一些关于将其用作 Xcode 应用程序的一部分的想法。

下一节,10.7 定义一个新的 C main() 函数可能有助于您如何将该代码(为清楚起见在此处显示)转换为更像 ObjC 的东西:

static int
Main_Wrapper(int argc, char *argv[])
{
  int nb_user_directive;
  PlBool top_level;

  nb_user_directive = Pl_Start_Prolog(argc, argv);

  top_level = Pl_Try_Execute_Top_Level();

  Pl_Stop_Prolog();

  if (top_level || nb_user_directive)
    return 0;

  fprintf(stderr,
          "Warning: no initial goal executed\n"
          "   use a directive :- initialization(Goal)\n"
          "   or remove the link option --no-top-level"
          " (or --min-bips or --min-size)\n");

  return 1;
}

int
main(int argc, char *argv[])
{
  return Main_Wrapper(argc, argv);
}

将所有这些混杂在一起NSApplicationMain会很有趣!

我能想到的唯一另一种方法是让上面的代码启动你的 Cocoa 应用程序,可能通过使用objc_msgSend这个答案中的描述,“Calling Cocoa APIs from C”

祝你好运。肖恩。

于 2013-08-31T22:10:44.753 回答