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

Reply via email to