first order lisp