(defn -parse
"Takes a form and an env map and dispatches on the head of the form, that is
a special form."
[form env]
((case (first form)
do parse-do
if parse-if
new parse-new
quote parse-quote
set! parse-set!
try parse-try
throw parse-throw
def parse-def
. parse-dot
let* parse-let*
letfn* parse-letfn*
loop* parse-loop*
recur parse-recur
fn* parse-fn*
var parse-var
#_:else parse-invoke)
form env))