CS457/557 Project Ideas
This list is just intended to get you thinking. You are encouraged to
develop your own project ideas. The project specification should serve to make
sure that you and the instructor agree about the scope and focus of the project.
The one essential requirement is that
the implementation involve building and manipulating a non-trivial data structure in ML.
-
Write a program that uses sml/tk to build a GUI for a simple application. Games like
tic-tac-toe or checkers make good applications; the program has to keep track of play,
but needn't know how to play itself.
-
Write a program that can play solitaire. Use it to determine empirically the odds of winning.
-
Write an interpreter for the abstract syntax of a simple programming language.
Use the ideas from Reade Ch. 6, and perhaps the ideas on denotational semantics from Reade Ch. 10.
-
Write a parser and corresponding typechecker for a simple programming language.
Use the top-down parsing framework described in Reade Ch. 6, or use ml-yacc.
-
Implement a variety of standard sorting algorithms in a functional framework, and
make an empirical comparison of their relative efficiencies.
Important notes:
-
Projects are due (by email to apt) at 10am, Tuesday, June 3.
This is a hard deadline; it will NOT be extended.
-
Project specifications are due (by email to apt) by 10am, Thursday, May 13.
Specifications will be reviewed as soon as received; instructor must approve specification.
- Project teams may have one, two, or three participants.
- Remember to take advantage of the available libraries!
Andrew P. Tolmach
Tue May 6 10:59:09 PDT 1997