         start with this for now."
    :author "Reid McKenzie"
    :added "0.0.12"}
-  (:require [oxcart
+  (:require [clojure.string :as s]
+            [clojure.java.io :as io]
+            [oxcart
              [util :refer [var-name var->ns var->name]]
              [passes :as passes :refer [require-pass whole-ast->forms]]
              [pattern :as pattern]]

                           whole-ast->forms
                           (keep #(and (pattern/def? %)
                                       (reach (pattern/def->var %)))))]
    ;; compile & write the set of used classes
    (doseq [ast reach-defs]
      (let [{:keys [class-name] :as class-ast} (-> ast emit-class)
            class-bc                           (-> class-ast -compile)]
        (write-class class-name class-bc)))

    (let [class-name (var->ns entry)
          class-ast  {}
          class-bc   (-> class-ast -compile)]

            [oxcart.passes.defs
             :refer [locate-var-as-value]]
            [clojure.tools.emitter.jvm.transform
             :refer [-compile]]
            [clojure.tools.analyzer.jvm.utils
             :refer [primitive? prim-or-obj] :as j.u]
            [clojure.tools.emitter.jvm.emit
             :refer [emit-line-number
                     emit-constants]]))

(defn var->class [x]
  {:pre  [(var? x)]
