             (core/number? default)
             (core/true? default)
             (core/false? default)) "a string, number or boolean as default value")
-  (core/let [defname (cljs.compiler/munge (core/str *ns* "/" sym))
+  (core/let [defname (comp/munge (core/str *ns* "/" sym))
              type    (core/cond
                        (core/string? default) "string"
                        (core/number? default) "number"

  (:require clojure.walk
            clojure.set
            [clojure.string :as string]
            cljs.compiler
            [cljs.env :as env]
            #?(:cljs [cljs.core :as core])
            #?(:cljs [cljs.analyzer :as ana])))

             this-sym (gensym "_")
             locals   (keys (:locals &env))
             ns       (core/-> &env :ns :name)
             munge    comp/munge]
    `(do
       (when-not (exists? ~(symbol (core/str ns) (core/str t)))
         (deftype ~t [~@locals ~meta-sym]
