イフコンピュータ > IF/Prolog > マニュアル > IF/Prolog V4.1 マニュアル > ユーザーズ・ガイド > IF/Prologコンパイラの使用 > コンパイルされた述語の使用

コンパイルされた述語の使用

IF/Prolog by Siemens
MINERVA superseeded IF/Prolog. Please see http://www.ifcomputer.co.jp/MINERVA for details.

We discontinued to sell IF/Prolog Dec 31. 2003. For current customers, we continue to provide professional support for IF/Prolog until Dec 31, 2008.

コンパイルされたIF/Prologファイルは、たとえばコンパイルされたCや FORTRANファイルの場合とは同様、そのままでは実行できません。その代わりに、コンパイルしたファイルをロードし、その中で定義されたコンパイル済手続きを、コンパイルされていないIF/Prologの手続きを呼び出すのと同じ方法で、IF/Prologインタプリタレベルから起動できます。

Prologファイルがすでにコンパイルされている場合、以下のいずれの方法でもこれをロ−ドすることができます。

-コマンド行から、コマンド'ifprolog'とシステムパラメータ'-l'を使って以下のように します。

$ ifprolog -l myfile.sem (ifprologを参照して下さい)

-IF/Prologのセッション中に、述語loadを使って以下のようにします。

?-load(myfile).

2番目の例ではファイルには拡張子がありません。この場合IF/Prologは、'myfile'という名前のファイルを捜し、あればそれをロードします。そうでなければファイル'myfile.cmp'をロ−ドしようとします。これが失敗した場合には、ファイル'myfile.sem'をロ−ドしようとします。これらのファイルがいずれも存在しなければ、エラーメッセージが生成されます。

'unload(ファイル名)'を使って、現在のIF/Prologのデータベースからコンパイルされたモジュールを削除することができます。unloadした後、モジュール'ファイル名.sem'は、わからなくなります。述語abolishを使って、データベースから個々の述語を削除することも可能です。さらに、ファイルが最適化を書けずにコンパイルされた場合(ifsem -debugを使用して)、個々の節は削除され、インタプリトされたコードとして付け加えられることができます。

注意:

・コンパイルされたファイルは、'consult(ファイル名)'や'[ファイル名]'を使ってコンサルトできません!

・インタプリトされた手続きは、対応するコンパイルされた述語をロ−ドすれば、置き換わります。

・修正されたコンパイル済手続きは、変更することはできません。assertやretractを使用してこれを変更することはできません。

・最適化しコンパイルされた手続きの実行は、フルスクリ−ンデバッガやtrace/0を使ってデバッグすることはできません。

document: http://www.ifcomputer.co.jp/IFProlog/Manuals/v4.1/user_guide/compile/usecp/print_jp.html
published 2008/9/1 update 1994/8/30 (c) 1996-2006 IF Computer Japan
IF Computer 〒113-0022 Tel 03-5814-3352 start (AT) ifcomputer.com
Customer Support 東京都文京区千駄木5-28-2   http://www.ifcomputer.co.jp
戻る> managed with ubiCMS