Reflection and semantics in LISP