{-# LANGUAGE Trustworthy #-}
module HumblePrelude (
Bool(False, True),
(&&), (||), not, otherwise,
Maybe(Nothing, Just),
maybe,
Either(Left, Right),
either,
Ordering(LT, EQ, GT),
Char, String,
fst, snd, curry, uncurry,
Eq((==), (/=)),
Ord(compare, (<), (<=), (>=), (>), max, min),
Enum(fromEnum),
Bounded(minBound, maxBound),
Int, Integer, Float, Double,
Rational, Word,
Num((+), (-), (*), negate, abs, signum, fromInteger),
Real(toRational),
Integral(quot, rem, div, mod, quotRem, divMod, toInteger),
Fractional((/), recip, fromRational),
Floating(pi, exp, log, sqrt, (**), logBase, sin, cos, tan,
asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh),
RealFrac(properFraction, truncate, round, ceiling, floor),
RealFloat(floatRadix, floatDigits, floatRange, decodeFloat,
encodeFloat, exponent, significand, scaleFloat, isNaN,
isInfinite, isDenormalized, isIEEE, isNegativeZero, atan2),
subtract, even, odd, gcd, lcm, (^), (^^),
fromIntegral, realToFrac,
Semigroup((<>)),
Monoid(mempty, mconcat),
Functor(fmap, (<$)), (<$>),
Applicative(pure, (<*>), (*>), (<*)),
Monad((>>=)),
MonadFail,
mapM_, sequence_, (=<<),
Foldable(elem,
foldMap,
foldr,
foldl,
product,
sum),
Traversable(traverse, sequenceA, mapM, sequence),
id, const, (.), flip, ($), until,
asTypeOf, error, errorWithoutStackTrace,
seq, ($!),
null, length,
and, or, any, all,
Show,
IO,
FilePath,
) where
import Control.Monad
import Control.Monad.Fail
import System.IO
import Data.List
import Data.Either
import Data.Foldable ( Foldable(..) )
import Data.Functor ( (<$>) )
import Data.Maybe
import Data.Traversable ( Traversable(..) )
import Data.Tuple
import GHC.Base hiding ( foldr, mapM, sequence )
import GHC.Enum
import GHC.Num
import GHC.Real
import GHC.Float
import GHC.Show