dgrnbrg/vim-redl — pull request #21 by guns (2013-11-08 19:38:29+00:00)
Title: Use in-ns when creating the repl

This avoids blowing away any :exclude lists in :refer-clojure or :use
statements resulting in clojure.lang.Namespace.warnOrFailOnReplace
errors.

e.g.

;; foo.clj
(ns foo
(:refer-clojure :exclude [defn]))

(defmacro defn [& args] nil)

;; bar.clj
(ns bar
(:require [foo :refer [defn]])
(:refer-clojure :exclude [defn]))

(defn example [])

Running :Repl from bar.clj results in:

IllegalStateException defn already refers to: #'foo/defn in namespace: bar
clojure.lang.Namespace.warnOrFailOnReplace (Namespace.java:88)