1

私は Prolog を初めて使用し、コードのデバッグに Sicstus を使用しています。を使用してクエリを実行しているときに、すべてのバインディングを表示する方法はありますtrace/0か? または、手順中に印刷する他の方法はありますか?

4

2 に答える 2

3

SPIDER IDEを使用する場合、これは自動的に行われます。Emacs モード内から SICStus を実行しているときにバインディングを表示することもできます。最後に、デバッガーは「v」デバッガー コマンドを使用してバインディングを出力できます。

コンパイラの最適化により一部の変数が消える可能性があるため、すべての変数が使用できるわけではありません。これが問題になる場合は、consult/1 を使用して解釈されたコードを実行できます。これは遅くなりますが、デバッガーでより詳細な情報が得られることがあります。

于 2012-08-02T15:27:53.300 に答える