实现一个非常简单的 Forth 子集的求值器。
Forth 是一种基于栈的编程语言。 为 Forth 的一个小子集实现一个最基础的求值器。
你的求值器需要支持以下单词:
+、-、*、/(整数运算)DUP、DROP、SWAP、OVER(栈操作)你的求值器还需要支持用惯用语法定义新的单词:: word-name definition ;。
为简单起见,你唯一需要支持的数据类型是至少 16 位的有符号整数。
语法应遵循以下规则:数字是一个或多个(ASCII)数字组成的序列,单词则是一个或多个字母、数字、符号或标点组成的序列,并且不能是数字。 (Forth 实际使用的规则可能略有不同,不过这样已经足够接近了。)
单词不区分大小写。