Definition

An AST (Abstract Syntax Tree) is a data-structure that represents source code. This is used in Compilers to represent syntactic structure. This can be generated from EBNF productions.

When making an AST, root nodes are typically operators with their children being non-terminals.