
"Yitzchak Gale"
May I suggest an alternative?
Write a nice wiki article explaining that you do not need to understand arrows to use these functions.
Show what the types of the functions are when used in the naive way, and give some nice examples.
Explain anything else that a beginner might need to know when using them in this way - like, how to understand weird error messages you might get in GHC or Hugs. Or when it might be necessary to specify a type signature when otherwise you wouldn't have needed to.
Put a link to the wiki article in the Haddock docs for Control.Arrow, and in various tutorials. And we are done.
In a sense, yes. I'd be most happy if fmap was called map and so on and people just learned to cope. But there are educators with strong arguments against that, and this particular topic is an instance of the same thing, so some wider solution is needed. I suppose what I'm saying is that I'd prefer that the thing were not done until we have the wider solution, but if 'twere done 'twere well 'twere done by re-exporting the same names from Data.Tuple /imported from Control.Arrow/ (and requiring sophisticated people to use "hiding ((***),(&&&))" if they ever need to import Data.Tuple as when using Control.Monad). -- Jón Fairbairn Jon.Fairbairn@cl.cam.ac.uk