Three related namespace-resolution fixes surfaced porting the clojure.tools.logging library, all general: - chez-register-spec! treats a :use :only vector like :require :refer, so a (:use [ns :only [names]]) clause actually brings those names in. Before, a bare reference to an :only'd name resolved to nil. - syntax-quote (hc-sq-symbol) qualifies a referred name to its SOURCE namespace, not the compile namespace — so a macro that syntax-quotes a referred var (e.g. clojure.tools.logging/spy reaching clojure.pprint's pprint) expands correctly. - resolve consults :as aliases and :refers like ns-resolve does; (resolve 'alias/name) was returning nil because the alias wasn't expanded. |
||
|---|---|---|
| .. | ||
| chez | ||