@@ -6,9 +6,6 @@ import Control.Monad
6import Control.Monad.Ether
6import Control.Monad.Ether
7import Control.Ether.Abbr
7import Control.Ether.Abbr
9−import qualified Control.Monad.Ether.Implicit as I
10−import qualified Control.Ether.Implicit.Abbr as I
12import qualified Control.Monad.Reader as T
9import qualified Control.Monad.Reader as T
13import qualified Control.Monad.Writer as T
10import qualified Control.Monad.Writer as T
14import qualified Control.Monad.State as T
11import qualified Control.Monad.State as T
@@ -21,9 +18,9 @@ import Regression.T3
21import Regression.T4
18import Regression.T4
22import Regression.T5
19import Regression.T5
23import Regression.T6
20import Regression.T6
27ethereal "Foo" "foo"
24ethereal "Foo" "foo"
28ethereal "Bar" "bar"
25ethereal "Bar" "bar"
@@ -38,32 +35,10 @@ suite = testGroup "Ether"
43−data DivideByZero = DivideByZero
45−data NegativeLog a = NegativeLog a
49− :: ( Floating a, Ord a
50− , Ether '[I.E DivideByZero, I.E (NegativeLog a)] m
53− T.when (b == 0) (I.throw DivideByZero)
55− T.when (d < 0) (I.throw (NegativeLog d))
58−(&) :: a -> (a -> c) -> c
61−exceptCore' :: Double -> Double -> String
63− liftM show (exceptCore a b)
64− &I.handleT (\(NegativeLog (x::Double)) -> "nl: " ++ show x)
65− &I.handle (\DivideByZero -> "dz")
67summatorCore
42summatorCore
68 :: ( Num a
43 :: ( Num a
69 , T.MonadWriter (Sum a) m
44 , T.MonadWriter (Sum a) m