类似C的语言将系统堆栈用于局部变量和返回地址。 Forth具有数据堆栈和返回堆栈。是否有Forth的实现将系统堆栈用作返回堆栈,并因此使用return指令终止单词的执行?这是可行的方法吗?
是的,这完全可行。
call中使用本机ret和subroutine-threaded code指令。在这种情况下,系统堆栈在Forth中扮演返回堆栈的角色。
call
ret