kprolog K-Prolog Compiler Version 6.0

論理的代入

本節では、代入風の操作が行える項について解説します。 この種の操作の目的については、機能編を参照してください。

【項の初期化】
代入風操作が行える項は、}初期値{ の形式で初期化しておきます。初期値が不要な場合は、}${ とします。この形の項を被代入項と呼ぶことにします。

【例】
X = }a{		% 初期値 a 
X = }${		% 初期値なし
T = board(	% space を初期値に持つ4X4の盤面
	line(}space{,}space{,}space{,}space{),
	line(}space{,}space{,}space{,}space{),
	line(}space{,}space{,}space{,}space{),
	line(}space{,}space{,}space{,}space{))

【項の操作】
被代入項に対して、任意の項を代入風の操作で附値することができます。附置された値は読み取ることができます。この附値は後戻り時には元の状態に回復します。


+Bag<= +Term
Bag被代入項
Term任意の項

被代入項BagにTermを格納します。

エラー
instantiation_error
type_error


+Bag=> -Term
Bag被代入項
Term任意の項

被代入項Bagに最後に代入された項とTermを単一化します。

エラー
instantiation_error
type_error


+Bag<+ +Term
Bag被代入項
Term任意の項

被代入項BagにTermを格納しますが、それ以前に格納されていた項を保存しません。
つまり、後戻り時には最後に代入された項の値を復元せずに値なしになります。

エラー
instantiation_error
type_error


+Bag<+
Bag被代入項

被代入項Bagに最後に代入された項より以前に格納されていた項を保存しません。 後戻り時には最後に代入された項の値を復元せずに値なしになります。

エラー
instantiation_error
type_error


global(+Bag)
Bagグローバル変数名

アトミックな項Bagに被代入項を連想させます。その後の計算でBagを被代入項として利用できます。グローバル変数名のスコープはモジュールに限定されています。

エラー
instantiation_error
type_error



一つ上に戻る 目次に戻る