
The problem
Understand compilers by building one, end to end, and make each stage visible.
What I built
- Regex lexer, recursive-descent parser building an AST, semantic analyser with scoped symbol tables, tree-walking executor with closures and recursion.
- Errors with line numbers at every stage; a Flask API exposes each stage to the browser.
Result
Compiler Design lab project.
Gallery


