amzi prolog + eclipse问题

时间:2010-04-01 11:00:40

标签: prolog

嘿伙计们,我有关于日食的amzi prolog的问题,

我正在运行一个执行广度优先搜索的.pro文件,如果队列太长,

出现以下错误消息:

  

system_error 1021控制堆栈已满。   编译代码或增加.cfg   参数'control'

如果是这样,我怎样才能在eclipse下运行已编译的代码?我已经尝试过运行该项目但是听众刚刚结束而没有接受任何疑问......?

2 个答案:

答案 0 :(得分:1)

控制堆栈已满意味着以下两点之一:

  • 您有一个深度递归会耗尽控制堆栈。在这种情况下,您需要在 amzi.cfg 文件中增加“control”的默认值。你可能会发现你必须增加'堆','跟踪'和/或'本地'。

  • 您的程序出错,导致无限递归

在调试器中运行程序将显示您的情况。在初始的情况下,您会看到它深入挖掘解决方案。在稍后的情况下,您会看到它以圆圈形式追逐它的尾部,每次递归与之前的递归相同,但具有不同的变量。

答案 1 :(得分:0)

我不知道amzi prolog(我只使用了SICStus和SWI),并且从未使用Eclipse进行prolog,但正如错误消息所示,请尝试编译(而不是咨询)您的代码。在项目/属性下查看构建配置(如run / deug,因为它适用于Java / C ++)。希望“.cfg paramerer”也可以通过项目/属性访问。