IF Computer > IF/Prolog > Manuals > 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.

Prologでは述語はヘッドとボディから成ります。ボディはゴールの連言です。述語はこの連言が証明可能であれば真となります。Prologの述語は手続きとも呼ばれます。述語をコンパイルするということは、この述語を定義するサブゴールの定義もコンパイルされるということではありません。

IF/Prologコンパイラは'.pro'ファイルを入力とし、'.pro'ファイルで定義された述語のコンパイルされたコードを含む'.sem'ファイルを生成します。コンパイラは、以下のようにしてオペレーティング・システムレベルから起動することができます。

$ ifsem myfile

あるいは、Prologのセッション中には以下のようにして下さい。

?- compiles(myfile).

compiles/1によって、IF/Prologは新しいサブシェルを起動します。このサブシェルにおいて 'ifsem myfile'が実行されます。コンパイラは、ファイル'myfile.pro'を探し、このファイルに定義された述語のための中間コードを生成します。このコードはmyfile.semのようなファイルにセーブされます。

作業が完了し、サブシェルを終了してシステムが当初のPrologレベルに戻ると、コンパイルされたファイルがロードされます。コンパイラが成功した場合には、コンパイルに要した時間が以下のように表示されます。

?- compiles(myfile). file myfile.pro compiled in 0 secs.

ifsemに"-nonotify"のオプションを付けて、この表示をやめることができます。

デフォルトとして、ifsemとcompiles/1は最適化コードを生成します。もし、何らかの理由で最適化ができない場合は、ifsemが、-debugのオプションと共に起動されます。ifsemについての詳しい説明は、レファレンスマニュアルを見て下さい。

document: http://www.ifcomputer.co.jp/IFProlog/Manuals/v4.1/user_guide/compile/howcp/print_de.html
published 2008/10/13 update 1994/7/26 (c) 1996-2006 IF Computer Japan
IF Computer 5-28-2 Sendagi, Bunkyo-ku Tel +81-3-5814-3352 start (AT) ifcomputer.com
Customer Support Tokyo 113-0022 Japan   http://www.ifcomputer.com
Back> managed with ubiCMS