 (defn compile-and-load
   ^Class [form]
   (debug "COMPILE-AND-LOAD: " form)
-  (binding [*top-level* true]
+  (binding [*top-level* 'eval]
     (let [[name bytecode] (compile form)]
       (.defineClass *class-loader* name bytecode form)
       (Class/forName name true *class-loader*))))


(defn sanitize-case-lambda
  [env [_ methods :as form]]
  (for [[params & body] (validate-arities methods)]
    ))

(defn named-let
  [[_ name bindings & body]]

      (. gen returnValue)
      (. gen endMethod))))

(def ^:dynamic *compiled-lambdas*)

(defmulti compile
