Formal Languages and Translators: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 37: Line 37:
==Parse Tree==
==Parse Tree==


A parse tree is a graphical representation of a [[#Derivation|derivation]]. Each interior node of a parse tree represents the application of a [[#Production|production]]. A parse tree does not contain the information that reflects the order in which productions are applied to replace [[#Nonterminal|nonterminals]].
A parse tree is a graphical representation of a [[#Derivation|derivation]]. Each interior node of a parse tree represents the application of a [[#Production|production]] and it is labeled with the name of the [[#Nonterminal|nonterminal]] that is the [[#Production_Head|head]] of the production. A parse tree does not contain the information that reflects the order in which productions are applied to replace [[#Nonterminal|nonterminals]].


==<span id='Syntax_Tree'></span>(Abstract) Syntax Tree==
==<span id='Syntax_Tree'></span>(Abstract) Syntax Tree==

Revision as of 21:02, 13 July 2018

Internal

Overview

Compiler

Interpreter

Lexical Analysis

Regular Expressions

Finite Automata

Syntax Analysis (Parsing)

TODO Deplete This Parsing

Grammar

Derivation

Production

Terminal

Nonterminal


Backus-Naur Form (BNF)

Extended Backus-Naur Form (EBNF)

Parse Tree

A parse tree is a graphical representation of a derivation. Each interior node of a parse tree represents the application of a production and it is labeled with the name of the nonterminal that is the head of the production. A parse tree does not contain the information that reflects the order in which productions are applied to replace nonterminals.

(Abstract) Syntax Tree

Parser

Top-Down Parser

Bottom-Up Parser

Semantic Analysis