On Dec 17, 12:43 am, Kevin Martin <martink...@gmail.com> wrote:
> I unfortunately ran into circular requires today.  In previous
> versions of Clojure a circular require was answered with an
> exception.  The text of this was something along the lines of "Cannot
> load 'a' because already loading 'a'.  It looks as though this was
> changed with svn revision 1131  Sun Nov 30 12:58:30 2008 
> +0000.http://clojure.svn.sourceforge.net/viewvc/clojure?view=rev&revision=1131
> The commit message is "made nested load of already loading resource a
> no-op instead of a throw".  This implies this was an intentional
> change.  I found this 
> posthttp://groups.google.com/group/clojure/browse_thread/thread/d3dd0486f...
> where Rich seems to conclude that circular references are an error
> waiting to be debugged.  I agree with this sentiment and I'm confused
> as to why this was changed.
>

It was changed for AOT compilation, where it is now possible to gen-
class a class that gets responsibility for loading that same ns on
init, said init happening when the ns containing the gen-class is
compiled.

> If there is another thread I didn't find explaining this, please point
> me to it.  Otherwise, I am interesting why this was changed to what I
> vote is a worse design choice.

I hope to re-enable the detection of the 'mistake' case, just requires
some time to work out how to distinguish from the AOT case.

http://code.google.com/p/clojure/issues/detail?id=3

Rich

--~--~---------~--~----~------------~-------~--~----~
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
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