A compiler parses input from a programming language to assembly language or an internal
representation by matching the incoming symbols to Backus-Naur form production rules.
An LL parser, also called a top-bottom parser or top-down parser, applies each production
rule to the incoming symbols by working from the left-most symbol yielded on a production
rule and then proceeding to the next production rule for each non-terminal symbol encountered.
In this way the parsing starts on the Left of the result side (right side) of the production
rule and evaluates non-terminals from the Left first and, thus, proceeds down the parse tree
for each new non-terminal before continuing to the next symbol for a production rule.