Accompanying material for the paper "Generalizing Generalized Tries" by Ralf Hinze, in Journal of Functional Programming, 10(4), pp. 327-351, July 2000. de Bruijn terms. > module Term ( > Term(Var, App, Lam), > Incr(Zero, Succ), > ) where > data Term v = Var v > | App (Term v) (Term v) > | Lam (Term (Incr v)) > deriving (Show) > data Incr v = Zero | Succ v > deriving (Show)