Forth 中的 RDROP 是什么?

What is RDROP in Forth?

我是 Forth 的新手,我正在使用 SwiftForth。我正在寻找一种从文件中读取矩阵的方法,如此处 所述,但无法识别 rdrop。这是 Gforth 独有的还是图书馆的一部分?如果是图书馆,使用它需要哪些步骤?

RDROP 是一个众所周知但未标准化的词。

这个词可以这样定义:

: rdrop ( R: x -- ) postpone r> postpone drop ; immediate

可移植库中的条件定义如下所示:

[UNDEFINED] RDROP [IF]
: RDROP ( R: x -- ) POSTPONE R> POSTPONE DROP ; IMMEDIATE
[THEN]

"rdrop" 也可以定义如下,尽管它不严格符合标准:

: rdrop r> r> drop >r ;

它的优点是可以用作执行令牌,它不会尝试将单词编译到字典中,尽管它不太可能做任何有意义的事情。