summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/boot.clj25
-rw-r--r--src/jvm/clojure/lang/Namespace.java2
2 files changed, 15 insertions, 12 deletions
diff --git a/src/boot.clj b/src/boot.clj
index 92492706..70e9f30e 100644
--- a/src/boot.clj
+++ b/src/boot.clj
@@ -81,7 +81,7 @@
(defn rrest [x] (rest (rest x)))
(defn #^Boolean = [x y] (. clojure.lang.RT (equal x y)))
-(defn #^Boolean != [x y] (not (= x y)))
+(defn #^Boolean not= [x y] (not (= x y)))
(defn #^String str [#^Object x]
(if x (. x (toString)) ""))
@@ -1025,22 +1025,25 @@
(defn ns-map [#^clojure.lang.Namespace ns]
(. ns (getMappings)))
+(defn ns-unmap [#^clojure.lang.Namespace ns sym]
+ (. ns (unmap sym)))
+
(defn export [syms]
(doseq sym syms
(.. *ns* (intern sym) (setExported true))))
-(defn exports [#^clojure.lang.Namespace ns]
+(defn ns-exports [#^clojure.lang.Namespace ns]
(filter-key val (fn [v] (and (instance? clojure.lang.Var v)
(. v (isExported))))
(ns-map ns)))
-(defn imports [#^clojure.lang.Namespace ns]
+(defn ns-imports [#^clojure.lang.Namespace ns]
(filter-key val (partial instance? Class) (ns-map ns)))
(defn refer [ns-sym & filters]
(let [ns (find-ns ns-sym)
fs (apply hash-map filters)
- nsexports (exports ns)
+ nsexports (ns-exports ns)
rename (or (:rename fs) {})
exclude (to-set (:exclude fs))
to-do (or (:only fs) (keys nsexports))]
@@ -1051,12 +1054,12 @@
(throw (new java.lang.IllegalAccessError (strcat sym " is not exported"))))
(. *ns* (refer (or (rename sym) sym) var)))))))
-(defn refers [#^clojure.lang.Namespace ns]
+(defn ns-refers [#^clojure.lang.Namespace ns]
(filter-key val (fn [v] (and (instance? clojure.lang.Var v)
- (!= ns (. v ns))))
+ (not= ns (. v ns))))
(ns-map ns)))
-(defn interns [#^clojure.lang.Namespace ns]
+(defn ns-interns [#^clojure.lang.Namespace ns]
(filter-key val (fn [v] (and (instance? clojure.lang.Var v)
(= ns (. v ns))))
(ns-map ns)))
@@ -1095,7 +1098,7 @@
meta with-meta defmacro when when-not
nil? not first rest second
ffirst frest rfirst rrest
- = != str strcat gensym cond
+ = not= str strcat gensym cond
apply list* delay lazy-cons fnseq concat
and or + * / - == < <= > >=
inc dec pos? neg? zero? quot rem
@@ -1118,8 +1121,8 @@
cycle split-at split-with repeat replicate iterate range
doseq dotimes into
eval import
- ;unimport
- refer refers interns
+ ns-unmap
+ refer ns-refers ns-interns
in-ns
;unintern
into-array array
@@ -1141,7 +1144,7 @@
*warn-on-reflection*
resultset-seq
to-set distinct
- export exports imports ns-map
+ export ns-exports ns-imports ns-map
identical? instance?
load-file in-ns find-ns
filter-key find-ns create-ns remove-ns
diff --git a/src/jvm/clojure/lang/Namespace.java b/src/jvm/clojure/lang/Namespace.java
index 58da4da7..f0073bef 100644
--- a/src/jvm/clojure/lang/Namespace.java
+++ b/src/jvm/clojure/lang/Namespace.java
@@ -83,7 +83,7 @@ Object reference(Symbol sym, Object val){
throw new IllegalStateException(sym + " already refers to: " + o + " in namespace: " + name);
}
-public void unintern(Symbol sym) throws Exception{
+public void unmap(Symbol sym) throws Exception{
if(sym.ns != null)
{
throw new IllegalArgumentException("Can't unintern namespace-qualified symbol");