Next: , Previous: , Up: Defining Words   [Contents][Index]


6.10.4 Values

ValueConstant のように動作しますが、 変更することができます。 TO は、Values を変更するパース・ワード(parsing word)です。 (標準 Forth ではなく) Gforth では、 >body を使用しても value にアクセス(および変更)できます。

ここで幾つか例を示します:

12 Value APPLES     \ APPLES を初期値 12 で定義
34 TO APPLES        \ APPLES の値を変更。 TO はパース・ワード
1 ' APPLES >body +! \ APPLES をインクリメント。 非標準の使い方
APPLES              \ スタック頂上に 35 を置く(はず)
Value ( w "name" –  ) core-ext “Value”

name を初期値 w で定義します。 この値は to name または ->name で変更できます(訳注: -> と name の間に空白を開けない。 ->name とする。 ワードではなく、 テキスト・インタプリタの認識器(recognizer)機能によるもの)。

name 実行時: – w2

AValue ( w "name" –  ) gforth-0.6 “AValue”

value と似ていますが、 アドレスの為の値を定義します(これはクロス・コンパイラーでのみ違いが生じます)。

2Value ( d "name" –  ) double-ext “two-value”
fvalue ( r "name" –  ) floating-ext “f-value”

実行時: ( -- r1 )name を定義します。 ここで r は初期値です。 値は to name または ->name で変更できます。

TO ( value "name" –  ) core-ext “TO”

name の値を value に変更します

+TO ( value "name" –  ) gforth-1.0 “+TO”

name の値に value を足し込みます