It may be a bug somewhere in a Compiler. I've lost track at 
https://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/Compiler.java#L6624

after debugging this:

user> (def x `(quote ~(list 1 (clojure.lang.PersistentTreeMap/create (seq 
[1 2 3 4])))))
#'user/x
user> x
(quote (1 #sorted-map (1 2 3 4)))
user> (.eval (clojure.lang.Compiler/analyze 
clojure.lang.Compiler$C/EXPRESSION x))
(1 #sorted-map (1 2 3 4))
user> (eval x)
(1 {1 2, 3 4})

JW

On Thursday, August 8, 2013 10:14:57 PM UTC+2, David James wrote:
>
> I'd really appreciate if others could take a look. I wonder if it may 
> be a Clojure reader bug. 
>
> On Thu, Aug 8, 2013 at 3:55 PM, Jozef Wagner 
> <jozef....@gmail.com<javascript:>> 
> wrote: 
> > It seems there is something else in data reader which causes this 
> change. 
> > 
> > user=> (class '#foo/sm (1 2 3 4)) 
> > clojure.lang.PersistentArrayMap 
> > user=> (class (read-string "#foo/sm (1 2 3 4)")) 
> > clojure.lang.PersistentTreeMap 
> > 
> > It's quite puzzling. In both cases the evaluation does not take place, 
> but 
> > still the transition to PersistentArrayMap occurs. 
> > 
> > JW 
> > 
> > On Thursday, August 8, 2013 9:49:24 PM UTC+2, David James wrote: 
> >> 
> >> That's a good point about: 
> >> user=> eval (to-sorted-map '(1 2 3 4))) 
> >> {1 2, 3 4} 
> >> 
> >> But this should work, right? 
> >> user=> (assoc #sorted-map (:a 1 :b 2) :c 3) 
> >> {:c 3, :a 1, :b 2} ; incorrect 
> > 
> > -- 
> > -- 
> > You received this message because you are subscribed to the Google 
> > Groups "Clojure" group. 
> > To post to this group, send email to clo...@googlegroups.com<javascript:> 
> > Note that posts from new members are moderated - please be patient with 
> your 
> > first post. 
> > To unsubscribe from this group, send email to 
> > clojure+u...@googlegroups.com <javascript:> 
> > For more options, visit this group at 
> > http://groups.google.com/group/clojure?hl=en 
> > --- 
> > You received this message because you are subscribed to the Google 
> Groups 
> > "Clojure" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an 
> > email to clojure+u...@googlegroups.com <javascript:>. 
> > For more options, visit https://groups.google.com/groups/opt_out. 
> > 
> > 
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to