3

我正在努力跟上Irony的速度。我不断看到一些我还不理解的术语:终端、非终端、令牌、状态机、关联性、抽象语法树

有人可以给其中一些术语一些含义吗?我一直在阅读有关 Irony 的精彩内容,因此您可以在学习如何使用它方面提供任何帮助。

粗体字编辑

4

3 回答 3

4

这些术语并不是 Irony 特有的,而是来自计算机科学的概念。

标记是解析的原子元素,在标记化时不能进一步分解。分词是词法分析的一个子集。听起来您通常不熟悉解析背后的理论——更多内容请参见 Wikipedia这里也有好东西。

终端和非终端是指代币的类型。有关这些的详细信息,请参阅我的第二个链接。

编辑:抽象语法树是解析中的另一个概念。由于这些都是非 Irony 特有的概念,你可以通过谷歌搜索或查看Wikipedia找到很多。干杯!

于 2009-09-01T13:50:22.867 回答
4

关联性是数学中的一个术语,是运算符的属性。如果对于所有, , 和,则称操作符o是关联的abc

(a o b) o c = a o (b o c)

因此,因此,表达式a o b o c不需要括号来明确。

例如,加法运算符+在整数上是关联的:1 + 2 + 3无论我们以哪种顺序计算+s 都具有相同的值。但减法运算符-不是:意味着1 - 2 - 3两个不同的东西,这取决于-我们首先计算的东西。

于 2009-09-01T14:10:09.097 回答
1

有限状态机 (FSM) 或有限状态自动机(复数:自动机)或简称为状态机,是由有限数量的状态、这些状态之间的转换和动作组成的行为模型。有限状态机是具有原始内部存储器的机器的抽象模型。

用英语来说,这意味着您有一个围绕您的应用程序可以在任何给定时间处于有限数量的“状态”的概念设计的系统。一个实际的例子是在你“正在玩”或“暂停”的游戏或“开”或“关”的汽车。这两种状态是互斥的,存在一个 FSM 来管理当前状态。一般来说,FSM 不仅仅是一个对象或类,而是一种整体架构设计,其中应用程序中的所有操作都基于特定状态。

于 2009-09-01T13:44:37.303 回答