gpt4 book ai didi

prolog - 如何从另一个文件调用事实和规则

转载 作者:行者123 更新时间:2023-12-03 23:07:52 25 4
gpt4 key购买 nike

案例:我有一个文件solution.pl,我想在其中使用另一个文件的规则(这是程序的定义,不由我决定,但我认为它有点通用)。

所以我正在使用 Ciao Prolog,语法似乎是 ensure_loaded('c:/Path').

但是当我尝试使用其他文件的规则时,它告诉我他不知道我正在尝试使用什么规则。

另一方面,如果我在控制台上写入相同的 channel ,然后再次查询,它确实有效。

所以我想知道在控制台和文件上执行此操作的语法是否不同??

有人可以一步一步地告诉我,这样我就可以弄清楚我是否遗漏了什么吗?我现在正在做的是加载程序,就像我加载较小的程序一样,然后尝试查询包含在 ensure_loaded 命令中的文件的规则。正如我所说,如果在程序外部编写命令,它似乎确实有效。

最佳答案

在solution.pl中尝试

:- ensure_loaded('c:/Path').

或者,如果 c:/Path 中的源代码有一个模块指令 - 也就是说,它以 :- module(name, [exported/arity, ...]) 开头.

:- use_module('c:/Path').

关于prolog - 如何从另一个文件调用事实和规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36515866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com