4

当返回堆栈发挥作用时,堆栈注释应该是什么样子?

: FOO  ( d2 d1 tos -- sum flag ) 
   ... ;

这个词需要 5 个单元格并返回 2 个单元格,但是当使用返回堆栈时,括号之间的内容是什么?例如,堆栈注释将如何查找:

: BAZ  ( d2 d1 tos -- d )
   BASE @ >R >R   ( d2 d1 )
   2SWAP D-   ( d ) 
   R> DUP
   R@ BAR
   R> BONK ;
4

1 回答 1

6

返回堆栈效果单独注明,并以 . 为前缀R:

参见dpANS Forth 2.2.2。例如,描述>R:“执行:(x--)(R:--x)

于 2014-04-09T12:00:36.993 回答