An Abstract Syntax Tree (AST) is a representation of the structural and content-related details of a program. It does not include inessential punctuation and delimiters. AST is used by compilers for parsing, type resolution, flow analysis, and code generation.