MagicHaskeller-0.9.7.1: Automatic inductive functional programmer by systematic search
Safe HaskellNone
LanguageHaskell2010

MagicHaskeller.LibTH

Synopsis

Documentation

newtype Ordered a Source #

Constructors

Ord 

Fields

newtype Equivalence a Source #

Constructors

Eq 

Fields

newtype Partial a Source #

Constructors

Part 

Fields

last' :: a -> [a] -> a Source #

tail :: [a] -> [a] Source #

gcd :: Integral t => t -> t -> t Source #

enumFromThenTo :: (Enum b, Enum a1, Enum a2, Enum a3) => a3 -> a2 -> a1 -> [b] Source #

hd :: [a] -> Maybe a Source #

nat_para :: Integral i => i -> a -> (i -> a -> a) -> a Source #

nat_cata :: Integral i => i -> a -> (a -> a) -> a Source #

list_para :: [b] -> a -> (b -> [b] -> a -> a) -> a Source #

iF :: Bool -> a -> a -> a Source #

postprocess :: Exp -> Exp Source #

postprocess replaces uncommon functions like catamorphisms with well-known functions.

byEqs :: [(Int, Exp -> Exp -> Exp)] Source #

byOrds :: [(Int, Exp -> Exp -> Exp)] Source #

skip :: String -> String -> Exp -> Exp -> Exp Source #

appearsIn :: Data a => [Char] -> a -> Bool Source #

ppLambda :: [Pat] -> Exp -> Exp Source #

exploit Source #

Arguments

:: (Typeable a, Filtrable a) 
=> Bool

whether to include functions with unused arguments

-> (a -> Bool) 
-> IO () 

by1_head :: Partial a -> [a] -> a Source #

(--#!!) :: Partial a -> [a] -> Int -> a Source #

eqMaybeBy :: (t1 -> t2 -> Bool) -> Maybe t1 -> Maybe t2 -> Bool Source #

eqListBy :: (t1 -> t2 -> Bool) -> [t1] -> [t2] -> Bool Source #

eqEitherBy :: (t1 -> t2 -> Bool) -> (t3 -> t4 -> Bool) -> Either t1 t3 -> Either t2 t4 -> Bool Source #

eqPairBy :: (t1 -> t2 -> Bool) -> (t3 -> t4 -> Bool) -> (t1, t3) -> (t2, t4) -> Bool Source #

(--#/=) :: Equivalence a -> a -> a -> Bool Source #

by1_elem :: Equivalence a -> a -> [a] -> Bool Source #

by1_group :: Equivalence a -> [a] -> [[a]] Source #

by1_nub :: Equivalence a -> [a] -> [a] Source #

by1_isPrefixOf :: Equivalence a -> [a] -> [a] -> Bool Source #

by1_isSuffixOf :: Equivalence a -> [a] -> [a] -> Bool Source #

by1_isInfixOf :: Equivalence a -> [a] -> [a] -> Bool Source #

by1_stripPrefix :: Equivalence a -> [a] -> [a] -> Maybe [a] Source #

by1_lookup :: Equivalence a -> a -> (->) [(a, b)] (Maybe b) Source #

cmp :: Ord a => Ordered a Source #

compareMaybeBy :: (t1 -> t2 -> Ordering) -> Maybe t1 -> Maybe t2 -> Ordering Source #

compareListBy :: (t1 -> t2 -> Ordering) -> [t1] -> [t2] -> Ordering Source #

compareEitherBy :: (t1 -> t2 -> Ordering) -> (t3 -> t4 -> Ordering) -> Either t1 t3 -> Either t2 t4 -> Ordering Source #

comparePairBy :: (t1 -> t2 -> Ordering) -> (t3 -> t4 -> Ordering) -> (t1, t3) -> (t2, t4) -> Ordering Source #

(--#<=) :: Ordered a -> a -> a -> Bool Source #

(--#<) :: Ordered a -> a -> a -> Bool Source #

by1_max :: Ordered p -> p -> p -> p Source #

by1_min :: Ordered p -> p -> p -> p Source #

by1_sort :: Ordered a -> [a] -> [a] Source #

nrnds :: Num a => [a] Source #

pgfull :: ProgGenSF Source #

Library used by the program server backend

deb :: [[(HValue, Exp, Type)]] Source #

full :: [[(HValue, Exp, Type)]] Source #