> On 3/27/07, Dave at haskell.org <Dave at haskell.org> wrote: > > Given the amount of material posted at haskell.org and elsewhere > > explaining IO, monads and functors, has anyone considered publishing > > a comprehensive book explaining those subjects? (I am trying to > > read all the material online, but books are easier to read and don't > > require sitting in front of a computer to do so. Plus I can write in > > books :-). ) > > I've thought about writing extended tutorials on the relationship > between Haskell programming and category theory but there's a problem > I run into. It's tempting to make the identifications: > types<->objects, Haskell function<->arrows, suitably polymorphic > functions<->natural transformations, and so on. But the fact is, this > doesn't really work in the obvious way even though it seems like it > should at first (eg. Haskell functions aren't always total functions > in the mathematical sense and if you allow partial functions you can > do weird stuff). So either: > > (1) we need some technical work to patch up the differences (and > unfortunately I don't know what the patch-up is), > (2) we restrict ourselves to certain types of Haskell function for > which the theory works or > (3) we deliberately leave things a little vague. > > I usually tend to go for option (3), but that wouldn't be satisfactory > for an extended treatment. > > Has anyone else given this subject much thought? > -- > Dan Dan,
It's a long time since I looked at this so this might be a complete red herring but have you thought about using the category of \omega-CPOs. Types are then objects (\omega-cpos) and functions are then arrows (continuous functions in the \omega-cpo sense). These papers may be of use: 1. Meijer http://research.microsoft.com/~emeijer/Papers/CWIReport.pdf 2. Mitchell Wand: Fixed-Point Constructions in Order-Enriched Categories 3. Freyd: Recursive Types Reduced to Inductive Types. Dominic. _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
