##

top-down parsing vs bottom-up parsing

Lexical Analysis

The process to separate stream of characters into different words called tokens

Parser

EBNF (extended Backus-Naur form) is the most commonly used formalism to describe structure of languages

Semantic Analyzer

Intermediate Code Generator

Code Generator