Homework 7: Completing MiniScheme

Due: Friday, May 6 at 23:59

In this homework, you will finish your MiniScheme interpreter by implementing several new versions.

Preliminaries

Click on the assignment link and choose the same team as the previous assignment.

Once you have accepted the assignment and created/joined a team, you can clone the repository on your computer by following the instruction and begin working. But before you do, read the entire assignment and be sure to check out the expected coding style from the first homework.

Be sure to ask any questions on Piazza.

Submission

To submit your homework, you must commit and push to GitHub before the deadline.

Your repository should contain the following files

It may also a .gitignore file which tells Git to ignore files matching patterns in your working directory.

Any additional files you have added to your repository should be removed from the main branch. (You’re free to make other branches, if you desire, but make sure main contains the version of the code you want graded.)

Make sure you put your name (and your partner’s name if you’re working with one) as a comment at the top of each file.

Your task to to implement Part 9: MiniScheme F through Part 11: MiniScheme H of the MiniScheme project.

Each part builds a new version of MiniScheme, adding functionality step by step. Each part requires testing. You’ll definitely want to add testing for each part as you’re working on it.

Start by copying all of your .rkt files from homework 6 into your repository and committing them.

Start with MiniScheme F and work your way through in order.

  1. MiniScheme F (40 points).
  2. MiniScheme G (30 points).
  3. MiniScheme H (30 points).