2016-04-09 11 views
3

ケース:私は別のファイルのルールを使用したいsolution.plファイルを持っています(これはプログラムの定義ですが、私の考えではないと思いますそれはやや一般的です)。他のファイルからファクトとルールを呼び出す方法

私はCiao Prologを使用しており、構文はensure_loaded( 'c:/ Path')のようです。

しかし、私が他のファイルのルールを使用しようとすると、彼は私が使用しようとしているルールを知らないことを教えてくれます。

一方、コンソールに同じレーンを書き込んでもう一度クエリを実行すると、動作します。

だから私はおそらく、コンソール上とファイル上でそれを行うための構文が異なるのだろうか?

誰かが私にステップバイステップを教えてもらえますか?何か不足している場合、私はそれを理解することができますか?私が今やっていることは、小さなプログラムでやっているようにプログラムをロードしてから、ensure_loadedコマンドに含まれているファイルのルールを問い合わせることです。そして、私が言ったように、それはプログラムの外にコマンドを書き込むとうまくいくようです。 c:/Pathソースモジュールのディレクティブを持っている場合

答えて

2

solution.plで、

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

を試すか - つまり、それは私が行方不明になった:- module(name, [exported/arity, ...]).

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

で始まります - 一部を。私はそれを当たり前のように取ったように、私はそれがプロンプトのようなものだと思った。ありがとう、たくさんのコードを知っていて、正しく使用していないのは本当にイライラしています。 – keont

関連する問題