Previous: , Up: User-defined Defining Words   [Contents][Index]


6.10.10.10 Const-does>

create...does> は、 定義時から実行時に幾つかの値を転送(transfer)するためによく使用されます。 Gforth は、 このために以下を用意しています

const-does> ( run-time: w*uw r*ur uw ur "name" –  ) gforth-obsolete “const-does”

定義時: name を定義して返ります。

name 実行時: w*uw r*ur をプッシュし、 const-does> に続くコードを実行します。

このワードの一般的な使用例は以下のとおりです:

: curry+ ( n1 "name" -- )
1 0 CONST-DOES> ( n2 -- n1+n2 )
    + ;

3 curry+ 3+

ここで 1 0 は、 1 つのセルと 0 の浮動小数点が定義時から実行時に転送されることを意味します。

const-does> を使用する利点は以下のとおりです:

const-does> の標準 Forth 実装は compat/const-does.fs で利用できます。