MiniJava Compiler

This project is a MiniJava compiler built using ANTLR 3. It compiles MiniJava code into executable code, providing a complete pipeline from lexical analysis to code generation.

Table of Contents

Introduction

MiniJava is a subset of the Java programming language designed for educational purposes. This compiler project aims to demonstrate the fundamental concepts of compiler construction, including lexical analysis, parsing, semantic analysis, and code generation.

Features

  • Lexical analysis using ANTLR 3
  • Parsing of MiniJava syntax
  • Semantic analysis for type checking
  • Intermediate code generation
  • Error reporting and handling

Installation

To get started with this MiniJava compiler, you need to clone the repository and set up the necessary dependencies.

  1. Clone the repository:

    git clone https:https://github.com/omarKenawi/compiler-project.git
    cd minijava-compiler
  2. Install the required dependencies. Make sure you have Java and ANTLR 3 installed on your system.

Example

alt text

Team

This project was developed by a dedicated team of students from Cairo University: