In the previous part, we saw How to make LR(0) items How to make DFA for recognizing viable prefixes and handles How to build LR(0) parse table In LR(0) parsing whenever there is an item $A \to \alpha \bullet$ $(\bullet$ at end and $A$ is not the new Start symbol) action in parsing table for […]

# Compiler Design

## LR Parsing Part 3: LR(0) items and LR(0) parsing

Just revising on the previous part we have the following relation. Here $Lang$ denote the set of languages defined by the given set of grammars. $LL(0) \subset LL(1) \subset LL(2) \dots LL(k) \subset LL(k+1)\dots$ $Lang(LL(0)) \subset Lang(LL(1)) \subset Lang(LL(2)) \dots Lang(LL(k)) \subset Lang(LL(k+1))\dots$ $LR(0) \subset LR(1) \subset LR(2) \dots LR(k) \subset LR(k+1)\dots$ $Lang(LR(0)) \subset Lang(LR(1)) […]

## LR Parsing Part 2: Language of LL and LR grammars

Language of parsers

## Viable Prefixes and Handle in LR Parsing

Bottom up Parsing, Viable Prefix, Handle

## Optimization

Resources for Code Optimization Agner Optimizing Assembly Code