|Re: Clojure 1.5.0 bug (Java interop: Compiler.load(new StringReader(str));)||Andy Fingerhut||3/12/13 7:32 PM|
Yegor Bugayenko posted in a comment on ticket CLJ-1172 (http://dev.clojure.org/jira/browse/CLJ-1172) that calling RT.init() before Compiler.load() solved what looks like a similar problem for him.
On Tue, Mar 12, 2013 at 6:29 PM, Taegyoon Kim <stelo...@gmail.com> wrote:
|Re: Clojure 1.5.0 bug (Java interop: Compiler.load(new StringReader(str));)||Taegyoon Kim||3/12/13 9:41 PM|
But then(putting RT.init()),
Compiler.load() works, but Console (stderr?) says
No need to call RT.init() anymore
So I think this problem should be fixed.
2013년 3월 13일 수요일 오전 11시 32분 5초 UTC+9, Andy Fingerhut 님의 말:
|Re: Clojure 1.5.0 bug (Java interop: Compiler.load(new StringReader(str));)||Sean Corfield||3/12/13 10:41 PM|
Based on discussions I've seen on this list and clojure-dev, I think
you're using internal APIs that are not considered "supported" and
therefore subject to change at any time.
I asked about using clojure.lang.RT a while ago and was told to rely
on very little of the API, for example, so all I rely on is .var() and
calling .invoke() on the result of that. I would say the Compiler is
"out of bounds" and that you should instead use RT.var() and .invoke()
with basic Clojure functions to read and eval your string.
Sean A Corfield -- (904) 302-SEAN
An Architect's View -- http://corfield.org/
World Singles, LLC. -- http://worldsingles.com/
"Perfection is the enemy of the good."
-- Gustave Flaubert, French realist novelist (1821-1880)
|Re: Clojure 1.5.0 bug (Java interop: Compiler.load(new StringReader(str));)||Andy Fingerhut||3/12/13 11:04 PM|
OK, I don't know whether this is really a bug or just an obsolete message being printed on the console, but I've reopened the ticket and added a pointer to this discussion, and a link to exactly which commit it was that caused this change in behavior (just before Clojure 1.5.0-RC4).