A representation of inteGErs as functions invented by {Alonzo Church}, inventor of {lambda-calculus}. The inteGEr N is represented as a higher-order function which applies a given function N times to a given expression. In the {pure lambda-calculus} there are no constants but numbers can be represented by Church inteGErs. A Haskell function to return a given Church inteGEr could be written: church n = c where c f x = if n == 0 then x else c' f (f x) where c' = church (n-1) A function to turn a Church inteGEr into an ordinary inteGEr: unchurch c = c (+1) 0 See also von Neumann inteGEr. (1994-11-29)