I've noticed something strange when macroexpanding (with-open ...)
The (finally ...)
part looks something like this:
(finally (. stream clojure.core/close))
While this code does work, it just doesn't feel right to me.
I assume that, if, at some point in the future, the functin clojure.core/close
is added to the core namespace, it might break.
Am I right or, maybe, the fact that the method close
got namespace-qualified is irrelevant since any functio that goes inside the dot special form invocation (. object method)
will be trated as a method name, regardless of its namespace?