[Haskell-cafe] testing for exceptions
dedgrant at gmail.com
Sat Oct 31 10:40:45 UTC 2015
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.
On Oct 31, 2015 21:16, "Roelof Wobben" <r.wobben at home.nl> wrote:
> I have made this exercise which can be found at the Craft of Functional
> Programming book.
> -- exercise 32
> -- Suppose we have to raise 2 to the power n. If n is even, 2*m say, then
> -- 2n = 22*m = (2m)2
> -- If n is odd, 2*m+l say, then
> -- 2n = 22*m+l = (2n)2*2
> -- Give a recursive function to compute 2n which uses these insights.
> f2 :: Integer -> Integer
> f2 n
> | n < 0 = error "This will only run for positive numbers"
> | n == 0 = 1
> | even n = f2 ( n `div` 2) ^ 2
> | odd n = (f2 ( n `div` 2) ^ 2) * 2
> Now I have to make Hunit tests for it,
> But is there a way I can test if the error message is shown when a
> negative number is being used ?
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe