module Function where
import Prelude ( Integer, Int, () )
infixr 9 . ;
(.) :: (b -> c) -> (a -> b) -> a -> c ;
(f . g) x = f (g x) ;
infixr 0 $ ;
($) :: (a -> b) -> a -> b ;
f $ x = f x ;
applyStrict :: (Integer -> a) -> (Integer -> a) ;
applyStrict f 0 = f 0 ;
applyStrict f x = f x ;
flip :: (b -> a -> c) -> a -> b -> c ;
flip f x y = f y x ;
id :: a -> a ;
id x = x ;
nest :: Int -> (a -> a) -> a -> a ;
nest 0 _ x = x ;
nest n f x = nest (n1) f (f x) ;
const :: a -> b -> a ;
const a _ = a ;
fix :: (a -> a) -> a ;
fix f = f (fix f) ;