Learning To Write A Compiler
We are learning to write a compiler. We will create a single-pass compiler(or interpreter) initially. It will contain a Lexer, a recursive-descent Parser that creates an Abstract Syntax Tree(AST) and multiple visitor patterns that visit the AST and perform the specific task like pretty-printing, creating symbol table, semantic analysis and so on.