identity is of type for all types A, A to A. define function identity of x: return x. end. constant is of type for all types A and B, A to B to A. define function constant of x of y: return x. end. define factorial of type int to int of n: if n equals 0, then: return 1. else: return n times factorial of (n minus 1). end.
define factorial of type int to int of n: if n equals 0, then: return 1. else: let n accent be n minus 1 in: return n times factorial of n accent. end.