Forth システムは、 リターン・スタックにローカル変数を保持することができます。 通常、 ローカル変数を使用すると、 リターン・スタックを明示的に使用する必要がなくなるため、 これは合理的です。 したがって、 標準に準拠したプログラムを作成する場合で、 ワード内でローカル変数を使用している場合は、 そのワード内でのリターン・スタック操作のことは忘れてください(正確なルールについては標準ドキュメントを参照してください)。
>r
( w – R:w ) core “to-r”
r>
( R:w – w ) core “r-from”
r@
( – w ; R: w – w ) core “r-fetch”
rdrop
( R:w – ) gforth-0.2 “rdrop”
2>r
( w1 w2 – R:w1 R:w2 ) core-ext “two-to-r”
2r>
( R:w1 R:w2 – w1 w2 ) core-ext “two-r-from”
2r@
( R:w1 R:w2 – R:w1 R:w2 w1 w2 ) core-ext “two-r-fetch”
2rdrop
( R:w1 R:w2 – ) gforth-0.2 “two-r-drop”
n>r
( x1 .. xn n – r:xn..x1 r:n ) tools-ext “n-to-r”
nr>
( r:xn..x1 r:n – x1 .. xn n ) tools-ext “n-r-from”