抽象语法树(AST):一种用树状结构表示源代码语法结构的中间表示形式,保留程序的核心语义与层次关系,省略诸如括号、分号等对语义不关键的“表面语法”细节,常用于编译器、解释器、代码分析与重构工具中。(也常写作 AST)
The parser builds an abstract syntax tree.
解析器会构建一棵抽象语法树。
By walking the abstract syntax tree, the compiler can check types, optimize expressions, and generate code.
通过遍历抽象语法树,编译器可以进行类型检查、表达式优化并生成代码。
/ˈæbstrækt ˈsɪntæks triː/
abstract 来自拉丁语 abstractus,意为“抽离出来的、抽象的”;syntax 源自希腊语 syntaxis,意为“排列、句法”;tree 指“树状结构”。合起来表示:把代码的句法结构以“树”来表示,并对表面细节进行“抽象化”的表示法。