CS 257 (Spring 2004) Project: BASIC Interpreter *
You will write a Scheme program which interprets Lobo BASIC
programs. The only non-functional Scheme procedures you may use are
vector-set!, display, and newline. The project is organized as a set
of milestones which correspond to increasing letter grades:
- Satisfactory (C): Implement arithmetic expression evaluation
(i.e., +, -, *, /). Implement symbol table. Implement LET, INPUT,
PRINT, and END. Successfully run Foo.
- Solid (B): All of the above plus IF, GOTO, and comparison
operators (i.e., =, >, <, >=, <=, <>). Successfully run
Quadratic Formula I.
- Good (B+): All of the above plus GOSUB, RETURN, FOR,
and NEXT. Successfully run Quadratic Formula II.
- Very Good (A-): All of the above plus built in functions (e.g.,
LOG, ABS, RND, SQRT) and PRINT!. Successfully run Guess and
Hamurabi.
- Excellent (A): All of the above plus one and two dimensional
arrays. Implement DIM, ON GOTO, and ON GOSUB. Successfully run
Battleship and Amazing.
- Righteous Hacker (A+): All of the above plus READ, DATA, RESTORE,
and strings, including MID$. Successfully run Hangman.
Some Lobo BASIC programs:
What You Should Hand In
- Listings of all your code.
- Representative graphic output (where applicable).
When You Should Hand It In
The above should be handed in to the TA before Fri. May 14 at 5:00 PM.
* This webpage is located at http://cs.unm.edu/~williams/cs257/projects04.html