
On Thu, Feb 5, 2009 at 10:32 PM, Dan Weston
I truly have no idea what you are saying (and probably not even what I am saying), but I suspect:
a) You are calling IO the target category of applying the functor IO [taking a to IO a and (a->b) to (IO a -> IO b)] to Hask.
b) This category is hardly bereft, nor discrete. Its morphisms are IO a -> IO b.
Well, that's a function in Haskell, yes; but does it represent a morphism /in/ the category? It looks more like a Functor morphism to me.
c) What you are calling a "bereft" category is an empty category. Without (identity) morphisms, there can be no objects. There is only one such
Right, I meant other than Id morphisms. I guess "discrete" is the correct term.
category (the empty category), so naturally any two such are isomorphic (for what it's worth, which I suspect is not much).
Thanks, g