Thanks this was helpful. In many of Conal Elliot's writings I see that he shows that his semantic function is a natural transformation. Is that just basically showing the polymorphic nature of his semantic functions, or are there other benifits you get by showing a particular function is a natural transformation?
Daryoush On Thu, Apr 23, 2009 at 12:34 PM, Dan Doel <dan.d...@gmail.com> wrote: > On Thursday 23 April 2009 2:44:48 pm Daryoush Mehrtash wrote: > > Thanks for this example I get the point now. (at least i think i do :) ) > > > > One more question.... This all being on the same category then the > functor > > transformation can also be view as a simple morphism too. In this > example > > the listToMaybe can be viewed as morphism between list and Maybe types > that > > are both in the Hask categroy too. right? If so then what would > viewing > > the morphism as natural transformation by you? > > listToMaybe in general wouldn't be a morphism in the category, because > morphisms would be from concrete types to other concrete types. [1] So, if > you'll excuse some notation I just made up (with a little help from GHC > core > notation :)): > > listtoma...@int :: [Int] -> Maybe Int > listtoma...@char :: [Char] -> Maybe Char > listtoma...@string :: [String] -> Maybe String > > are all morphisms in the alleged Hask category. Each polymorphic function > (similar to the above one, at least) defines a family of morphisms like > that. > *But*, that's what a natural transformation is: a family of morphisms, one > for > each object in the category, that commute with functor application in a > certain way. Thus, one can look at the fully polymorphic listToMaybe as a > natural transformation: > > listToMaybe :: [] -> Maybe > > -- Dan > > [1] Maybe you could make up a category where polymorphic types are objects > as > well, but that doesn't seem to be the way people typically go about > applying > category theory to Haskell. > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe