|
|
|
|
|
|
|
|
|
|
| type String = [Char] |
|
|
|
|
|
|
|
|
|
|
|
| type Rational = Ratio Integer |
|
| module Data.Tuple |
|
| class Eq a where |
|
|
| class (Eq a) => Ord a where |
|
|
| class Enum a where |
|
|
| class Bounded a where |
|
|
| class (Eq a, Show a) => Num a where |
|
|
| class (Num a, Ord a) => Real a where |
|
|
| class (Real a, Enum a) => Integral a where |
|
|
| class (Num a) => Fractional a where |
|
|
| class (Fractional a) => Floating a where |
|
|
| class (Real a, Fractional a) => RealFrac a where |
|
|
| class (RealFrac a, Floating a) => RealFloat a where |
|
|
| map :: (a -> b) -> [a] -> [b] |
|
| (++) :: [a] -> [a] -> [a] |
|
| filter :: (a -> Bool) -> [a] -> [a] |
|
| concat :: [[a]] -> [a] |
|
| head :: [a] -> a |
|
| last :: [a] -> a |
|
| tail :: [a] -> [a] |
|
| init :: [a] -> [a] |
|
| null :: [a] -> Bool |
|
| length :: [a] -> Int |
|
| (!!) :: [a] -> Int -> a |
|
| foldl :: (a -> b -> a) -> a -> [b] -> a |
|
| foldl1 :: (a -> a -> a) -> [a] -> a |
|
| scanl :: (a -> b -> a) -> a -> [b] -> [a] |
|
| scanl1 :: (a -> a -> a) -> [a] -> [a] |
|
| foldr :: (a -> b -> b) -> b -> [a] -> b |
|
| foldr1 :: (a -> a -> a) -> [a] -> a |
|
| scanr :: (a -> b -> b) -> b -> [a] -> [b] |
|
| scanr1 :: (a -> a -> a) -> [a] -> [a] |
|
| iterate :: (a -> a) -> a -> [a] |
|
| repeat :: a -> [a] |
|
| replicate :: Int -> a -> [a] |
|
| cycle :: [a] -> [a] |
|
| take :: Int -> [b] -> [b] |
|
| drop :: Int -> [b] -> [b] |
|
| splitAt :: Int -> [b] -> ([b], [b]) |
|
| takeWhile :: (a -> Bool) -> [a] -> [a] |
|
| dropWhile :: (a -> Bool) -> [a] -> [a] |
|
| span :: (a -> Bool) -> [a] -> ([a], [a]) |
|
| break :: (a -> Bool) -> [a] -> ([a], [a]) |
|
| reverse :: [a] -> [a] |
|
| and :: [Bool] -> Bool |
|
| or :: [Bool] -> Bool |
|
| any :: (a -> Bool) -> [a] -> Bool |
|
| all :: (a -> Bool) -> [a] -> Bool |
|
| elem :: (Eq a) => a -> [a] -> Bool |
|
| notElem :: (Eq a) => a -> [a] -> Bool |
|
| lookup :: (Eq a) => a -> [(a, b)] -> Maybe b |
|
| maximum :: (Ord a) => [a] -> a |
|
| minimum :: (Ord a) => [a] -> a |
|
| concatMap :: (a -> [b]) -> [a] -> [b] |
|
| zip :: [a] -> [b] -> [(a, b)] |
|
| zip3 :: [a] -> [b] -> [c] -> [(a, b, c)] |
|
| zipWith :: (a -> b -> c) -> [a] -> [b] -> [c] |
|
| zipWith3 :: (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d] |
|
| unzip :: [(a, b)] -> ([a], [b]) |
|
| unzip3 :: [(a, b, c)] -> ([a], [b], [c]) |
|
| lines :: String -> [String] |
|
| words :: String -> [String] |
|
| unlines :: [String] -> String |
|
| unwords :: [String] -> String |
|
| sum :: (Num a) => [a] -> a |
|
| product :: (Num a) => [a] -> a |
|
| type ReadS a = String -> [(a, String)] |
|
| type ShowS = String -> String |
|
| class Read a where |
|
|
| class Show a where |
|
|
| reads :: (Read a) => ReadS a |
|
| shows :: (Show a) => a -> ShowS |
|
| read :: (Read a) => String -> a |
|
| lex :: ReadS String |
|
| showChar :: Char -> ShowS |
|
| showString :: String -> ShowS |
|
| readParen :: Bool -> ReadS a -> ReadS a |
|
| showParen :: Bool -> ShowS -> ShowS |
|
| ioError :: Exception -> IO a |
|
| userError :: String -> IOError |
|
| catch :: IO a -> (Exception -> IO a) -> IO a |
|
| type FilePath = String |
|
| type IOError = Exception |
|
| putChar :: Char -> IO () |
|
| putStr :: String -> IO () |
|
| putStrLn :: String -> IO () |
|
| print :: (Show a) => a -> IO () |
|
| getChar :: IO Char |
|
| getLine :: IO String |
|
| getContents :: IO String |
|
| interact :: (String -> String) -> IO () |
|
| readFile :: FilePath -> IO String |
|
| writeFile :: FilePath -> String -> IO () |
|
| appendFile :: FilePath -> String -> IO () |
|
| readIO :: (Read a) => String -> IO a |
|
| readLn :: (Read a) => IO a |
|
| class Monad m where |
|
|
| class Functor f where |
| fmap :: (a -> b) -> f a -> f b |
|
|
| mapM :: (Monad m) => (a -> m b) -> [a] -> m [b] |
|
| mapM_ :: (Monad m) => (a -> m b) -> [a] -> m () |
|
| sequence :: (Monad m) => [m a] -> m [a] |
|
| sequence_ :: (Monad m) => [m a] -> m () |
|
| (=<<) :: (Monad m) => (a -> m b) -> m a -> m b |
|
| maybe :: b -> (a -> b) -> Maybe a -> b |
|
| either :: (a -> c) -> (b -> c) -> Either a b -> c |
|
| (&&) :: Bool -> Bool -> Bool |
|
| (||) :: Bool -> Bool -> Bool |
|
| not :: Bool -> Bool |
|
| otherwise :: Bool |
|
| subtract :: (Num a) => a -> a -> a |
|
| even :: (Integral a) => a -> Bool |
|
| odd :: (Integral a) => a -> Bool |
|
| gcd :: (Integral a) => a -> a -> a |
|
| lcm :: (Integral a) => a -> a -> a |
|
| (^) :: (Num a, Integral b) => a -> b -> a |
|
| (^^) :: (Fractional a, Integral b) => a -> b -> a |
|
| fromIntegral :: (Integral a, Num b) => a -> b |
|
| realToFrac :: (Real a, Fractional b) => a -> b |
|
| id :: a -> a |
|
| const :: a -> b -> a |
|
| (.) :: (b -> c) -> (a -> b) -> a -> c |
|
| flip :: (a -> b -> c) -> b -> a -> c |
|
| ($) :: (a -> b) -> a -> b |
|
| until :: (a -> Bool) -> (a -> a) -> a -> a |
|
| asTypeOf :: a -> a -> a |
|
| error :: String -> a |
|
| undefined :: a |
|
| ($!) :: (a -> b) -> a -> b |