aop-prelude-0.1.0.0: prelude for Algebra of Programming
AOPPrelude
(.) :: (t1 -> t2) -> (t3 -> t1) -> t3 -> t2 infixr 9 Source #
const :: p1 -> p2 -> p1 Source #
id :: p -> p Source #
outl :: (a, b) -> a Source #
outr :: (a, b) -> b Source #
swap :: (b, a) -> (a, b) Source #
assocl :: (a, (b1, b2)) -> ((a, b1), b2) Source #
assocr :: ((a1, a2), b) -> (a1, (a2, b)) Source #
dupl :: (a, (b1, b2)) -> ((a, b1), (a, b2)) Source #
dupr :: ((a1, a2), b) -> ((a1, b), (a2, b)) Source #
pair :: (t -> a, t -> b) -> t -> (a, b) Source #
cross :: (t1 -> a, t2 -> b) -> (t1, t2) -> (a, b) Source #
cond :: (t -> Bool) -> (t -> p, t -> p) -> t -> p Source #
curry :: ((a, b) -> t) -> a -> b -> t Source #
uncurry :: (t1 -> t2 -> t3) -> (t1, t2) -> t3 Source #
false :: p -> Bool Source #
true :: p -> Bool Source #
(&&) :: Bool -> Bool -> Bool infixr 3 Source #
(||) :: Bool -> Bool -> Bool infixr 2 Source #
not :: Bool -> Bool Source #
otherwise :: Bool Source #
leq :: Ord a => (a, a) -> Bool Source #
less :: Ord a => (a, a) -> Bool Source #
eql :: Ord a => (a, a) -> Bool Source #
neq :: Ord a => (a, a) -> Bool Source #
gtr :: Ord a => (a, a) -> Bool Source #
geq :: Ord a => (a, a) -> Bool Source #
meet :: (p -> Bool, p -> Bool) -> p -> Bool Source #
join :: (p -> Bool, p -> Bool) -> p -> Bool Source #
wok :: ((a, b) -> t) -> (b, a) -> t Source #
zero :: p -> Integer Source #
succ :: Integer -> Integer Source #
pred :: Integer Source #
plus :: (Integer, Integer) -> Integer Source #
minus :: (Integer, Integer) -> Integer Source #
times :: (Integer, Integer) -> Integer Source #
divide :: Fractional a => (a, a) -> a Source #
negative :: Integer -> Bool Source #
positive :: Integer -> Bool Source #
(++) :: [a] -> [a] -> [a] infixr 5 Source #
null :: [a] -> Bool Source #
nil :: p -> [a] Source #
wrap :: a -> [a] Source #
cons :: (a, [a]) -> [a] Source #
cat :: ([a], [a]) -> [a] Source #
concat :: [[a]] -> [a] Source #
snoc :: ([a], a) -> [a] Source #
head :: [a] -> a Source #
tail :: [a] -> [a] Source #
split :: [a] -> (a, [a]) Source #
last :: [a] -> a Source #
init :: [a] -> [a] Source #
inits :: [a] -> [[a]] Source #
tails :: [a] -> [[a]] Source #
splits :: [a] -> [([a], [a])] Source #
cpp :: ([a], [b]) -> [(a, b)] Source #
cpl :: ([a], b) -> [(a, b)] Source #
cpr :: (a, [b]) -> [(a, b)] Source #
cplist :: [[a]] -> [[a]] Source #
minlist :: ((b, b) -> Bool) -> [b] -> b Source #
bmin :: ((a, a) -> Bool) -> (a, a) -> a Source #
maxlist :: ((b, b) -> Bool) -> [b] -> b Source #
bmax :: ((a, a) -> Bool) -> (a, a) -> a Source #
thinlist :: ((a, a) -> Bool) -> [a] -> [a] Source #
length :: [a] -> Integer Source #
sum :: [Integer] -> Integer Source #
trans :: [[a]] -> [[a]] Source #
list :: (t -> a) -> [t] -> [a] Source #
filter :: (a -> Bool) -> [a] -> [a] Source #
catalist :: (b, (a, b) -> b) -> [a] -> b Source #
cata1list :: (a -> b, (a, b) -> b) -> [a] -> b Source #
cata2list :: ((a, a) -> b, (a, b) -> b) -> [a] -> b Source #
loop :: ((a, b) -> a) -> (a, [b]) -> a Source #
merge :: ((a, a) -> Bool) -> ([a], [a]) -> [a] Source #
zip :: ([a], [b]) -> [(a, b)] Source #
unzip :: [(a1, a2)] -> ([a1], [a2]) Source #
words :: [Char] -> [[Char]] Source #
lines :: [Char] -> [[Char]] Source #
unwords :: [[Char]] -> [Char] Source #
unlines :: [[Char]] -> [Char] Source #
primPrint :: Show a => a -> IO () Source #
flip :: (t1 -> t2 -> t3) -> t2 -> t1 -> t3 Source #