arrows

Ashley Yakeley ashley@semantic.org
Mon, 3 Jun 2002 21:39:34 -0700


At 2002-06-03 09:22, Wolfgang Jeltsch wrote:

>I think, it would be better to
>        * create a class, which has only an identity and a composition
>          member, and call this class Arrow or Morphism;
>        * create a subclass of this class which introduces pure (arr);
>        * create a subclass of the class introducing pure in order to
>          introduce first.

I agree. I have something similar in my experimental alternative Prelude 
project 'HBase', but only two classes:

<http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/hbase/Source/Cat
egory/Composition.hs?rev=HEAD&content-type=text/plain>

<http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/hbase/Source/Cat
egory/Arrow.hs?rev=HEAD&content-type=text/plain>

I call them 'Compositor' and 'Arrow'. I see two issues:

1. Should I add your intermediate class? Do you have examples of 
something that has 'pure' but not 'first'?

2. What are the best names? I used 'Arrow' because it's for "arrows" as 
defined by John Hughes <http://haskell.cs.yale.edu/arrows/>. I might 
change 'Compositor' to 'Morphism' if it makes more sense to people.

As you point out, Hughes' "arrows" are a strict subset of category theory 
"arrows".

-- 
Ashley Yakeley, Seattle WA