On Jun 19, 2:24 pm, Mark Engelberg <mark.engelb...@gmail.com> wrote: > On Sat, Jun 19, 2010 at 12:20 PM, Nicolas Oury <nicolas.o...@gmail.com> wrote: > > Not "ordinary" code. 10^19 is big. > > Nicolas, I think you misunderstand my point. I'm talking about > loop/recur behavior. If you initialize a loop with the literal 1, and > then recur with a number 2 that's pulled from a collection (and thus > boxed), it will break. That's ordinary code. What if loop had its current functionality, but if one tries to recur with a different type, the affected loop variable becomes automatically boxed (and if *warn-on-reflection* or a similar variable is set, the compiler emits an note)? What would be the downside of this approach? All of the code that currently works correctly with the current state of the equal branch remains fast, and all of these examples of bad behaviour should just work, and the programmer should be able to ask to know about them.
-- 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