let sq = \x->x*x let dsq = \x->\y->sq x+sq y let pyth = \x->\y->sqrt (dsq x y) let fix = \f->((\x->f (x x)) (\x->f (x x))) let fact = fix (\f->\i->\n->(ifz i n (f (i-1) (i*n)))) let const = \x->\y->x pyth 3 4 fact 5 1 const 42 1