Assignment 1: Due September 15.
Study the emacs modes that support syntax-directed editing and highlighting and colouring of keywords, comments, etc. for languages such as pascal, C, or best of all, SML (since the package is not already packaged into the distribution, and is easily available on the net). Suitable modify this implementation to make a mode for your algebraic specification language.
Assignment 2: Due just after the second minors
Form teams of two students. I would prefer an undergraduate-graduate pairing.
Familiarize yourself with a simple spreadsheet such as xspread that runs or either Jog or Mohan. (Excel is too complicated).
Prepare a requirements specification document for a simple text-oriented spreadsheet, describing its functionality and user interface. The requirements should be reasonably rigorous and detailed.
Next prepare a preliminary design document, detailing the various modules, their functionality and interaction. You should use UML and associated techniques for your design. You may wish to use a literate programming tool such as noweb to document your design.
Be ready to prepare also a plan for component testing and integration (before you implement the design).
Write a user manual for your proposed system. You may wish to use version control on these documents, since they may undergo revisions at various stages.