首页 > 其他 > 详细

抽象语法树(Abstract Syntax Tree)

时间:2014-06-20 11:27:03      阅读:444      评论:0      收藏:0      [点我收藏+]

抽象语法树(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),表示算术运算,并使用递归,由此组成其他表达式。

抽象语法树(Abstract Syntax Tree),布布扣,bubuko.com

抽象语法树(Abstract Syntax Tree)

原文:http://blog.csdn.net/hadstj/article/details/28393733

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!