[Haskell-beginners] Type classes and synonyms
Brent Yorgey
byorgey at seas.upenn.edu
Sun Nov 22 10:30:20 EST 2009
On Sat, Nov 21, 2009 at 09:07:38PM +0000, Philip Scott wrote:
> > The final piece is that (->) is an Arrow, the most basic one but still
> > an Arrow, so if you replace a by (->) in the type of second, you get :
> > second :: (->) b c -> (->) (d, b) (d, c)
> > which is just
> > second :: (b -> c) -> (d, b) -> (d, c)
>
> Ahh I see, very clever! There is method to the madness after all; I should
> never have doubted you Haskell. Thank you for taking the time to explain that
> :)
>
> Do you know of any good discussions/tutorials on Arrows? I've only managed to
> find little snippets here and there
>
> http://www.haskell.org/arrows/
The two tutorials linked from the "Bibliogrphy" section of that page
are very good:
http://www.soi.city.ac.uk/~ross/papers/fop.html
http://www.cs.chalmers.se/~rjmh/afp-arrows.pdf
You may also be interested in reading the "Category" and "Arrow"
sections of the Typeclassopedia:
http://www.haskell.org/sitewiki/images/8/85/TMR-Issue13.pdf
-Brent
More information about the Beginners
mailing list