Skip to content

benhachy/JavaCompiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Compiler in Java

gl03, 01/01/2022.

The goal of our project was to develop a compiler for a programming language called Deca, which has syntax similar to Java. We utilized several tools including Maven, ANTLR, Git, Jacoco, and Eclipse to build the compiler. The Deca compiler project involved the following steps:

Designing and implementing the Deca language grammar using ANTLR. Writing code to generate abstract syntax trees (AST) from Deca source code. Implementing semantic analysis checks to validate the Deca program's correctness and completeness. Generating intermediate code using the AST to optimize the Deca program's performance. Generating executable code in assembly language for the target machine. The Deca compiler project provided us with an opportunity to learn about compiler design, programming language theory, and software engineering best practices. We also gained hands-on experience with tools commonly used in software development, such as Git for version control, Maven for dependency management, and Jacoco for code coverage analysis. The end result was a fully functional Deca compiler that could translate Deca programs into executable code for the target machine.