Assignment 1

Ryerson University


Due: October 5


In this course you will be developing an interpretor for a high-level language, called HL, which manipulates numbers and polynomials

In this assignment you will be using JavaCC to build HL's scanner.

This should familiarize you with the use of compiler generators and the scanning process.

Preliminary Work

Before you start your assignment, you will need to set up the environment under which you will be working. You can develop your assignment on whatever platform you prefer. However, we will only test it on the moons, so you should verify your work on this platform before submitting it in order not to lose grades for compilation problems. In all cases, you will need to do the following:


Once you have set up the environment, and verified that it runs smoothly, you can start your assignment.

Testing your Assignment

  1. Upload your HL.jj, Token.java, BooleanToken.java,IntegerToken.java, DecimalToken.java, and StringToken.java to elara in a new directory on the moons.
  2. Copy TestHL.java and makefile to that directory.
  3. run make in that directory to check that your program compiles properly.
  4. Once it compiles properly,
  5. Run runtests. If your program passes a test, you will only see the name of that test. If it doesn't, you will see all the cases where your result differs from the expected result. You can then fix your program and retest it for that specific test using the script t.

Submitting your Assignment

Once you have verified that your source does compile and run properly on elara:


How to submit the assignment

This page is maintained by Sophie Quigley (cps710@scs.ryerson.ca)
Last modified Tuesday, 20-Sep-2016 12:02:34 EDT