[Haskell-cafe] Control.Arrow being icky
In GHCi, I import Control.Arrow, and Kliesli doesn't appear: Prelude Control.Arrow :t Kliesli interactive:1:0: Not in scope: data constructor `Kliesli' Prelude Control.Arrow :browse (^) :: (Arrow a) = a c d - (b - c) - a b d (^) :: (Arrow a) = a b c - (c - d) - a b d class (Control.Category.Category a) = Arrow a where arr :: (b - c) - a b c first :: a b c - a (b, d) (c, d) second :: a b c - a (d, b) (d, c) (***) :: a b c - a b' c' - a (b, b') (c, c') () :: a b c - a b c' - a b (c, c') class (Arrow a) = ArrowApply a where app :: a (a b c, b) c class (Arrow a) = ArrowChoice a where left :: a b c - a (Either b d) (Either c d) right :: a b c - a (Either d b) (Either d c) (+++) :: a b c - a b' c' - a (Either b b') (Either c c') (|||) :: a b d - a c d - a (Either b c) d class (Arrow a) = ArrowLoop a where loop :: a (b, d) (c, d) - a b c newtype (ArrowApply a) = ArrowMonad a b = ArrowMonad (a () b) class (ArrowZero a) = ArrowPlus a where (+) :: a b c - a b c - a b c class (Arrow a) = ArrowZero a where zeroArrow :: a b c newtype Kleisli m a b = Kleisli {runKleisli :: a - m b} (^) :: (Arrow a) = (c - d) - a b c - a b d (^) :: (Arrow a) = (b - c) - a c d - a b d leftApp :: (ArrowApply a) = a b c - a (Either b d) (Either c d) returnA :: (Arrow a) = a b b () :: (Control.Category.Category cat) = cat b c - cat a b - cat a c () :: (Control.Category.Category cat) = cat a b - cat b c - cat a c Does anybody know what's going on? Louis Wasserman wasserman.lo...@gmail.com ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Control.Arrow being icky
It's spelled 'Kleisli'. You spelled it 'Kliesli' 2009/2/9 Louis Wasserman wasserman.lo...@gmail.com In GHCi, I import Control.Arrow, and Kliesli doesn't appear: Prelude Control.Arrow :t Kliesli interactive:1:0: Not in scope: data constructor `Kliesli' Prelude Control.Arrow :browse (^) :: (Arrow a) = a c d - (b - c) - a b d (^) :: (Arrow a) = a b c - (c - d) - a b d class (Control.Category.Category a) = Arrow a where arr :: (b - c) - a b c first :: a b c - a (b, d) (c, d) second :: a b c - a (d, b) (d, c) (***) :: a b c - a b' c' - a (b, b') (c, c') () :: a b c - a b c' - a b (c, c') class (Arrow a) = ArrowApply a where app :: a (a b c, b) c class (Arrow a) = ArrowChoice a where left :: a b c - a (Either b d) (Either c d) right :: a b c - a (Either d b) (Either d c) (+++) :: a b c - a b' c' - a (Either b b') (Either c c') (|||) :: a b d - a c d - a (Either b c) d class (Arrow a) = ArrowLoop a where loop :: a (b, d) (c, d) - a b c newtype (ArrowApply a) = ArrowMonad a b = ArrowMonad (a () b) class (ArrowZero a) = ArrowPlus a where (+) :: a b c - a b c - a b c class (Arrow a) = ArrowZero a where zeroArrow :: a b c newtype Kleisli m a b = Kleisli {runKleisli :: a - m b} (^) :: (Arrow a) = (c - d) - a b c - a b d (^) :: (Arrow a) = (b - c) - a c d - a b d leftApp :: (ArrowApply a) = a b c - a (Either b d) (Either c d) returnA :: (Arrow a) = a b b () :: (Control.Category.Category cat) = cat b c - cat a b - cat a c () :: (Control.Category.Category cat) = cat a b - cat b c - cat a c Does anybody know what's going on? Louis Wasserman wasserman.lo...@gmail.com ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe