I found the two terms in a compiler design book, and I\'d like to know what each stands for, and how they are different.
I searched on the internet and found that pa
Wikipedia says
Parse trees concretely reflect the syntax of the input language, making them distinct from the abstract syntax trees used in computer programming.
An answer on Quora says
A parse tree is a record of the rules (and tokens) used to match some input text whereas a syntax tree records the structure of the input and is insensitive to the grammar that produced it.
Combining the above two definitions,
An Abstract Syntax Tree describes the parse tree logically. It does not need to contain all the syntactical constructs required to parse some source code (white spaces, braces, keywords, parenthesis etc). That's why Parse Tree is also called Concrete Syntax Tree while the AST is called Syntax Tree. The output of syntax analyser is, thus, syntax tree actually.