Homework 1:
RAW MATERIAL: Interpreter code.
WHAT: Do exercises 4.6, 4.9 and 4.10 from the SICP book.
DELIVERABLE: a modified, but running, version of the metacircular interpreter.
Here are some notes that shape the answers:
- for 4.6, answer the question as is.
- for 4.9 you should implement the while
construct only. It should look like this: (while while-predicate
expr). As a header for your implementation, include a few
commented lines commenting on the addition of this iteration construct
in the language. Is it absolutely necessary? Or can you express the
intent in another way without extending the interpreter? What are the
advantages of including it in the language?
Include 2 valid programs that use your while construct.
- for 4.10, choose only 3 constructs that will get your new syntax. Include 5 valid programs written in your new syntax.
DUE DATE: 1/19 by midnight