[Haskell-cafe] better error expression in IO function
Albert Y. C. Lai
trebla at vex.net
Fri Jul 13 15:54:05 EDT 2007
Derek Elkins wrote:
> On Wed, 2007-07-11 at 17:10 -0700, Jeremy Shaw wrote:
>> At Thu, 12 Jul 2007 09:18:14 +1000,
>> Thomas Conway wrote:
>>> On 7/12/07, Andrew Coppin <andrewcoppin at btinternet.com> wrote:
>>>> It's fairly common to use the Either type for this. By convention,
>>>> "Right" means "correct", and by elimination "Left" means an error...
>>> Presumably, this is because the world is dominated by dull,
>>> conventional, right handed people. :-)
>> Personally, I blame it on the Romans.
> Personally, I blame it on biology.
I blame it on partial application at the type level. "instance Monad
(Either x)" and "instance MonadError (Either x)" determine that x has no
hope of being the normal return type and is stuck as the exception type.
But I guess you can still blame the Romans for writing everything from
left to right, writing "Either x y" rather than "y x rehtiE", thus
designating the first argument x as Left. Actually, it predates the
Romans too: they learned that from the Greeks, and the Greeks got that
from God-knows-who. (Actually, God knows, just that I don't know.)
More information about the Haskell-Cafe