One important piece of information about this feature is that it doesn't 
manipulate classloaders.  This feature was designed to be used with OSGi or 
applications that handle their own classloading issues.  In a typical 
application when entering a namespace isolation you may also need to bind a 
separate Compiler/LOADER and Thread context loader, but those classloaders 
can, and should, have common parent classloaders to load clojure from the 
same classloader. This feature simply isolates clojure namespaces, it 
doesn't manipulate the underlying Java support systems which can already be 
manipulated with existing clojure features.  The benefit of this feature is 
that you can create separate namespace environments with different copies 
of the same namespace names without needing to run separate run-times 
making it possible for them to directly share all clojure data types via 
shared namespaces since they're loaded by the same classloader. A side 
effect of the implementation is that it is possible to copy namespaces from 
one environment to another if you have the pointer returned from creating 
the environment. I have considered adding automatic creation of dynamic 
classloaders and associating them with isolation environments but that can 
be done from libraries using existing clojure features. 

For future reference since additional features will likely be added to this 
fork, this feature is implemented via the git commit 
https://github.com/rritoch/clojure/commit/0f4804bbf584049fd85ffa872f10522cc41eff9a






-- 
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/d/optout.

Reply via email to