イフコンピュータ > MINERVA > マニュアル > レファレンス > 制限事項 > 実装における制限

実装における制限

MINERVA
ifcomputer logo
f
Expert Services on the Web

MINERVA自体による制限は、それほど存在しません。

  • 項の引数の数:

    項は、125以上の引数をとることはできません。

  • 整数の大きさ

    MINERVAでの整数は64ビットで表現されています。 つまり、Javaデータタイプの"long"に相当するので、 1,000,000,000,000,000,000までの整数を扱えます。

  • 大きな節の集合

    同じファンクターとアリティを持つ大規模な(数千から万の程度の)節の 集合では、コンパイラオーバーフローを起こす可能性があります。 MINERVA 2.3以前のバージョンでは、オーバーフローは報告されず、 単に無効なコードを生成し、オブジェクトロード時に、ArrayIndexOutOfBoundsException を引き起こします。
    MINERVA 2.3のコンパイラでは、以下のようなエラーメッセージが出ます。 ** minerva assembler: com.ifcomputer.minerva.MC26: codearea is too huge
    もし、この条件に当たったら、障害となっている述語を ダイナミックとして宣言して下さい。例えば、:- dynamic(myfactdb/5) 。 異なる最適化の戦略が使われることにより、あなたのプログラムの 効率もあがります。

現在のところ、MINERVAのエンジンのこれ以外の制限について つまり、リストの長さ、アトムの大きさなどについて把握していません。

プログラムの大きさや実行時間などの実際的な制限については、 実行速度、Java言語処理系、OS、ハードウェアアーキテクチャ に依って異なります。

document: http://www.ifcomputer.co.jp/MINERVA/Manual/Reference/Restrictions/ImplementationLimits/print_jp.html
published 2008/10/6 update 2002/3/20 (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