Forth 实现使用系统堆栈作为返回堆栈是否实用?

Non*_*ull 5 stack forth

像 C 这样的语言使用系统堆栈来存储局部变量和返回地址。Forth有数据栈和返回栈。是否有 Forth 的实现使用系统堆栈作为返回堆栈,从而使用返回指令来结束单词的执行?这是一个可行的方法吗?

Use*_*ess 0

是的,这是完全可行的。

它可能仅在您编译单词而不是解释它们时有用,并且如果您想捕获返回堆栈错误而不是仅仅崩溃,则需要编写某种堆栈帧约定。