
Hi, I'm a Haskell newbie and I couldn't quite make sense of how currying maps to the the Hask Category. How would I map, for instance (+) to a Hask 'arrow'? If objects are types on Hask, then would a -> a -> a be the first object on this chain? In that case, for the first arrow, would I have as many arrows as there are possible partial applications on this type? In other words, would I have (+) 1, (+) 2, (+) 3 ... all those transitioning to the second object ( a -> a ) Or, do I have ONE arrow only, like (+) a ? In either case, what happens after 'm left with the object a -> a? What function (arrow) mutates it to the final value 'a'? That's the function resulting from the previous partial application of (+), but that fuction only exists at run time, after you apply the first one. I guess the question is, if you'd have to write a diagram for this, what would you write beside each object and beside each arrow?