next up previous
Next: Introduction


First presented at CALECO 97

Jocelyn Ireson-Paine
Department of Experimental Psychology, Oxford University
KB7 Ltd gif

October 1997, revised November 1998


Spreadsheet models are hard to read and maintain. Spreadsheets provide few facilities for documentation, and although the structure of a spreadsheet program is implicit in the cell formulae, it cannot be made explicit as it would if programmed in a conventional programming language. To make spreadsheets easier to maintain, we are developing Model Master (MM), a compiler that generates spreadsheet formulae from textual specifications of models.

An MM program consists of one or more object specifications. To specify single objects, the user describes their attributes or properties, together with equations stating how these depend on one another. To specify a complete model, the user describes how these objects are to be connected together, by writing extra equations that say how their attributes are interrelated. MM compiles these specifications into cell formulae. The compiler can generate formulae for a number of different spreadsheets. So far, we have code-generators for Lotus 1-2-3 and Excel.

MM provides inheritance, in the object-oriented sense of the word, enabling the user to take a partially-specified object and extend it by adding more attributes or equations. These partial specifications can be stored in library files, making code reuse easy.

MM is based on a new programming paradigm, System Limit Programming, also used in the development of the Web authoring tool Web-O-Matic, and based on Goguen's sheaf semantics of objects.

Jocelyn Ireson-Paine
Sat Nov 28 17:42:14 GMT 1998