On this page:
Testing
Submitting
Grading
8.6

Assignment 2: a86 Primer

Due: Wednesday, February 14, 11:59PM

The goal of this assignment is to gain practice programming in a86.

This is a collaborative assignment. You may work with anyone you’d like on this assignment, but each person must submit their submit.zip file on Gradescope.

You are given a a86-basics.zip file (on ELMS under "Files"), that contains a README, a Makefile, and a number of Racket modules. In each module there are several “stubs,” i.e. incomplete definitions with type signatures, descriptions, and a small set of tests. Each definition has a bogus (but type correct) body marked with a “TODO” comment. Your job is to replace each of these expressions with a correct implementation of the a86 code.

Make sure you do not rename any files. Also make sure not to change the name or signature of any definition given to you. You may add any additional functions that help you solve the overall problem you’re tackling.

Testing

You can test your code in several ways:

Note: running racket <filename.rkt> will not test the file; you need to use raco or DrRacket.

Submitting

Use the included Makefile to run make submit.zip (or simply make) to generate an appropriate submit.zip file for submitting to Gradescope.

Grading

Your submission will be graded for correctness. Passing the unit tests included in the file is necessary but not sufficient to receive a perfect score. You are strongly encouraged to add your own tests to ensure the correctness of your solutions.