ddc-code-0.4.3.1: tetra/base/Data/Function.ds
module Data.Function
export { id; apply; compose; }
where
-- | Identity function.
id (x: a): a
= x
-- | Apply a function to its argument.
-- The operator '$' is desugared to applications of this function.
apply [a b: Data] (f: a -> b) (x: a): b
= f x
-- | Compose two functions.
-- The operator '∘' is desugared to applications of this function.
compose [a b c: Data] (f: b -> c) (g: a -> b): a -> c
= λ(x : a) -> f (g x)