首页 > 代码库 > 抽象语法树(Abstract Syntax Tree)
抽象语法树(Abstract Syntax Tree)
抽象语法树(Abstract Syntax Tree)
抽象语法树(AST)表示组成程序的结构,可以让程序员更容易使用,F# 适宜这种开发的一个原因就是它的联合类型。这种类型非常适合表示语言,因为它可以用来表示相关而结构不相同的项目。下面就是抽象语法树的例子:
type Ast =
| Ident of string
| Val of System.Double
| Multi of Ast * Ast
| Div of Ast * Ast
| Plus of Ast * Ast
| Minus of Ast * Ast
树非常简单,只包含一种类型;复杂的树可能包含很多类型,但都遵循这一基本模式。对于这个树,它是Ast [ 原文有误,忘记修改了] 类型,包含了标识符(Ident 类型),标识符的名字由字符串表示,还包含了值(Val 类型),值由System.Double 表示。Ast 类型还包含了另外四个类型(Multi、Div、Plus、Minus),表示算术运算,并使用递归,由此组成其他表达式。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。