[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 mailing list