[Haskell-cafe] Arrow without `>>>'

Valery V. Vorotyntsev valery.vv at gmail.com
Wed Jan 23 12:20:19 EST 2008


Hi, friends,

I've built GHC from darcs, and...
Could anybody tell me, what's the purpose of Arrow[1] not having `>>>'
method?

  1. http://darcs.haskell.org/packages/base/Control/Arrow.hs

  $ ghci
  GHCi, version 6.9.20080104: http://www.haskell.org/ghc/  :? for help
  Loading package base ... linking ... done.
  Prelude> :m + Control.Arrow
  Prelude Control.Arrow> :i Arrow
  class (Control.Category.Category a) => Arrow a where
    arr :: (b -> c) -> a b c
    pure :: (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')
          -- Defined in Control.Arrow
  instance Arrow (->) -- Defined in Control.Arrow
  instance (Monad m) => Arrow (Kleisli m) -- Defined in Control.Arrow
  Prelude Control.Arrow> Leaving GHCi.

I can't build[2] arrows-0.3 package without `>>>' in Arrow.

  2.
  vvv at fun:~/src/arrows$ darcs w
  {
  hunk ./Control/Arrow/Operations.hs 36
  +import Control.Category ((>>>))
  hunk ./Control/Arrow/Transformer/CoState.hs 23
  +import Control.Category ((>>>))
  }
  vvv at fun:~/src/arrows$ runhaskell Setup build
  Preprocessing library arrows-0.3...
  Building arrows-0.3...
  [ 3 of 12] Compiling Control.Arrow.Transformer.CoState (
Control/Arrow/Transformer/CoState.hs,
dist/build/Control/Arrow/Transformer/CoState.o )

  Control/Arrow/Transformer/CoState.hs:29:7:
      `>>>' is not a (visible) method of class `Arrow'

The question arises "should I?", but this is one of lambdabot's[3]
depencies.

  3. http://code.haskell.org/lambdabot/

Thanks a lot!

--
vvv


More information about the Haskell-Cafe mailing list