The Mochaccino Cortado compiler takes your source code from words to an abstract syntax tree. It is made up of a scanner and a parser.
The scanner takes your source code and produces tokens, which are meaningful chunks of characters. It also attaches metadata such as the line and column number it was found on and token type.
The parser takes a linear stream of tokens and produces a 2-dimensional tree representation of your code, known as an Abstract Syntax Tree (AST). This is then used by the Affogato code generator to produce Dart code accordingly. But first, the AST must be analysed for errors.
Mochaccino’s Espresso Analyser conducts static type-checking and variable binding on the AST produced earlier, modifying certain nodes if needed. This is where compile-time errors are reported.
Mochaccino’s Affogato code generator compiles your source code to