The specification of various kinds of statistical model
from machine learning and data mining
is examined formally using the type and class system of the
functional programming language Haskell as a meta-language.
Types and classes (in the programming sense) of models, and
operations on models, are defined; many are naturally polymorphic.
Convenient conversion functions map between
the classes of models and extend their range of usefulness.
The result is a kind of theory of programming with models,
not only of using them.
The ``theory'' can run as an executable Haskell program or
can throw light on the foundations of platforms for programming
with statistical models.
Presented at the Second
Hawaii International Conference on Statistics and Related Fields (HICS03),
Honolulu, 2003 June 5-8.|