Skip to content

A simple interpreter implemented with Scheme for Java/C-ish language

License

Notifications You must be signed in to change notification settings

DEC4F/java-interpreter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

This is simeple interpreter written in Scheme for a Java/C-ish language. It supports some Java language features, including object type, exception throwing, dot operator, gotos, call by value&reference and so on.

This is NOT a JVM implementation. Also, this does NOT support non-Integer number, method overloading, non-default constructors and abstract methods, as all these topics are beyond the scope of our course.

Installation

  1. Configure

We highly recommend using the Pretty Big interpreter that comes with Dr.Racket to run our program. Other interpreter such as MIT/GNU Scheme and Chez Scheme would also work but will fail some of the our test cases.

  1. Install
$ git clone https://github.com/DEC4F/Java-Interpreter.git
$ cd Java-Interpreter
  1. Run

When using one of the Scheme interpreter mentioned above, if you want to interpret a certain Java file:

(load "Interpreter.scm")
(interpret filename)

Or if you simply want to test our program:

(load "Test.scm")
(test)

Test.scm is script that automatically runs all of our test cases. For some issue we had with using box in the implementation, our interpreter didn't pass Test_13.

License

This repository is licensed under the Gnu Public License 3.0.

About

A simple interpreter implemented with Scheme for Java/C-ish language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages