CSE 341 -- Programming Languages

Autumn 2001

Department of Computer Science and Engineering, University of Washington

Steve Tanimoto (instructor)

Assignment 3

Version 0.1 of October 16 (Subject to Minor Changes)

Recursive Parsing and Searching in Lisp 

Due date and time: Thursday, October 25, 2001 (at the beginning of section).

Turn in this assignment as a hardcopy printout. However, electronic copies of the Lisp files will also be required; additional turn-in instructions will be announced later. If you are porting the program to the web, turn in with your hardcopy the correct URL for running the program.


 

Title: Recursive Parsing and Searching in Lisp.

Purposes: 1. Demonstrate fluency with Lisp. 2. Gain experience writing functions that solve problems recursively. 3. Work in SMALL GROUPS (partnerships of 2). 4. Have an opportunity to create a web-based Lisp program.

Instructions: Choose a partner. Study the problem and design some suitable representations for the statements and other data constructs needed to solve the problem. Break down the problem into simpler problems and make up function names for functions to solve the simpler problems. Solve the overall problem.
Write a Lisp program that accepts a set of statements in English, transforms them into a symbolic representation, and then performs a simple kind of reasoning with them, answering a question. Optionally, put your program on the web so that users can operate it from a browser.