[Haskell-cafe] testing for exceptions
Roel van Dijk
vandijk.roel at gmail.com
Sat Oct 31 11:10:47 UTC 2015
Small nitpick, but I would generally put the "exception" or "error" in the
Left part of an Either and a correct result in the Right part.
This has some advantages.
1 - Right is right as opposed to wrong. Easy to remember mnemonic.
2 - It fits neatly with the Monad (Either e) instance.
Roelof, a nice exercise is to first implement your f2 function with the Integer
-> Maybe Integer type and then with Integer -> Either String Integer.
If you realize that both Monad Maybe and Monad (Either e) you can use
almost the same code.
2015-10-31 12:04 GMT+01:00 Darren Grant <dedgrant at gmail.com>:
> I'd expect most Haskellers to recommend something like,
> f2 :: Integer -> Either Integer ErrorString
> where ErrorString is some specific error value type. (String may suffice
> for you.)
> This is a safe general solution, but there are many potentially more
> specific possibilities that might make your program simpler depending on
> how this function relates to the context it will be used in.
> On Oct 31, 2015 21:46, "Roelof Wobben" <r.wobben at home.nl> wrote:
>> Op 31-10-2015 om 11:40 schreef Darren Grant:
>>> Unfrotunately the answer to this is not simple:
>>> 'error' more or less terminates the program in an unreasonable way.
>>> It would be preferable for f2 to result in a type that can contain the
>>> error result to be parsed.
>> So I have to change the type of f2.
>> To what do I have to change it to make it testable.
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe