Web-based type checker for Java

A Java type checking program written in JavaScript

poster

Description

This project significantly enhances the Source Academy ecosystem, a tool widely used in programming education, by integrating support for Java, a cornerstone object-oriented programming language for computing freshmen worldwide. A centerpiece of this enhancement is the development of a web-based Java Type Checker. This checker operates by generating an abstract syntax tree (AST) for input Java programs, which is then traversed to identify compile-time violations in accordance with the Java Language Specification (JLS).

This initiative is a critical component of the Source Academy community's broader efforts to offer a comprehensive toolchain for the Java programming language. It complements three other concurrent final year projects: a web-based Java compiler, a web-based Java virtual machine, and an explicit control evaluator for Java. Together, these projects aim to provide full-spectrum support for Java within Source Academy, thereby broadening the platform's educational utility and reinforcing its commitment to supporting the evolving needs of computer science education.