[Haskell-cafe] Paper draft: "Denotational design with type class morphisms"

Conal Elliott conal at conal.net
Wed Feb 18 22:21:38 EST 2009

I have a draft paper some of you might enjoy, called "Denotational design
with type class morphisms".


    Type classes provide a mechanism for varied implementations of standard
    interfaces. Many of these interfaces are founded in mathematical
    tradition and so have regularity not only of *types* but also of
    *properties* (laws) that must hold. Types and properties give strong
    guidance to the library implementor, while leaving freedom as well. Some
    of the remaining freedom is in *how* the implementation works, and some
    is in *what* it accomplishes.

    To give additional guidance to the *what*, without impinging on the
    *how*, this paper proposes a principle of *type class morphisms* (TCMs),
    which further refines the compositional style of denotational
    semantics. The TCM idea is simply that *the instance's meaning is the
    meaning's instance*. This principle determines the meaning of each type
    class instance, and hence defines correctness of implementation. In some
    cases, it also provides a systematic guide to implementation, and in
    some cases, valuable design feedback.

    The paper is illustrated with several examples of type, meanings, and

You'll find the paper at http://conal.net/papers/type-class-morphisms/ .

I'd sure appreciate feedback on it, especially if in time for the *March 2*
ICFP deadline.  Pointers to related work would be particularly appreciated,
as well as what's unclear and what could be cut.  This draft is an entire
page over the limit, so I'll have to do some trimming before submitting.

Enjoy, and thanks!

   - Conal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20090218/3b038476/attachment.htm

More information about the Haskell-Cafe mailing list