Type Signature
lSuppose T is some data type
lLet T* mean the type of lists of elements of type T. Here are some type signatures:
lcons: T « T* ¨ T*
lappend: T* « T* ¨ T*
lfirst: T* ¨ T
lrest: T* ¨ T*
lHere « means the pairing of arguments.