arr :: ArrowReadShow q => (a->b) -> q a b (>>>) :: ArrowReadShow a => a b c -> a c d -> a b d (<<<) :: ArrowReadShow a => a c d -> a b c -> a b d first :: ArrowReadShow a => a b c -> a (b,d) (c,d) second:: ArrowReadShow a => a b c -> a (d,b) (d,c) (<**) :: ArrowReadShow a => a b c -> a d e -> a (b,d) (c,e) (**>) :: ArrowReadShow a => a b c -> a d e -> a (b,d) (c,e) (|||) :: ArrowReadShow a => a b c -> a d c -> a (Either b d) c (+++) :: ArrowReadShow q => q a c -> q b d -> q (Either a b) (Either c d) (<+>) :: ArrowReadShow q => q a b -> q a b -> q a b (<|>) :: ArrowReadShow q => q a b -> q a c -> q a (Either b c) readSymbol :: ArrowReadShow q => String -> q a a showSymbol :: ArrowReadShow q => String -> q a a mayReadParen :: ArrowReadShow q => Int -> q a b -> q a b mayShowParen :: ArrowReadShow q => Int -> q a b -> q a b setPrec :: ArrowReadShow q => Int -> q a b -> q a b high :: Int pair :: a -> b -> (a,b)