This repository contains assignments for COMP 3320 Principles of Programming Languages course.
Basic introduction to programming language concepts and course setup.
Implementation of a lexical analyzer (scanner) for a simple programming language called TINY, with support for basic arithmetic, boolean expressions, and control structures.
Implementation of a parser for the TINY programming language, designed to analyze the structure of the code and ensure it adheres to the defined grammar.
An enhanced version of the Ruby Parser, adding support for more complex language features and improved error handling during parsing.