On 11/6/10 2:09 AM, Sebastian Fischer wrote:
Hello,

I'm curious and go a bit off topic triggered by your statement:

On Nov 6, 2010, at 12:49 PM, rocon...@theorem.ca wrote:

An applicative functor morphism is a polymorphic function,
eta : forall a. A1 a -> A2 a between two applicative functors A1 and
A2 that preserve pure and <*>

I recently wondered: why "morphism" and not "homomorphism"?

Indeed, for the present example I'd call eta an applicative-functor homomorphism[1].

The use of "morphism" in category theory originated as a shortening of "homomorphism"[2], though there is a semantic difference between them as the two terms are used today. A morphism is an arrow in any particular category. What it takes to be morphism in category, C, depends on which category C happens to be. It turns out that many of the algebraic constructs studied outside of category theory form categories where the objects are particular constructs (e.g., specific rings, groups,...) and the morphisms are the appropriate homomorphisms (e.g., ring homomorphisms, group homomorphisms,...). Thus, the term "homomorphism" has to do with particular kinds of structure preserving transformations that are discussed in the underlying theories, whereas "morphism" is a general term in category theory used as a metatheory.


[1] Assuming the context presented in the original email. In other contexts I may refer to eta as an Applicative morphism (i.e., a morphism in the category whose objects are Applicative instances) or as an Applicative transformation (i.e., a natural transformation between Applicative instances viewed as functors).

[2] Whence the use of "Hom(A,B)" to refer to the collection of morphisms from A to B, and related terms like "hom-set" and "hom-functor".

--
Live well,
~wren
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to