> How about the compiler just loads classes in a SecurityManager context that
> won't allow some naughtiness like System.exit()? Then you'd get a
> CompilerException caused by ExceptionInInitializerError caused by
> SecurityException rather than have your REPL, IDE, or whatever blow up from
> code like the above. :)

Well, that seems like quite a hack. And it still doesn't cover things
like infinite loops (maybe inadvertently). Plus there may well be good
reasons to do certain things in clinit. What if the initializer throws
an exception because of some configuration error?

As for macros: These must of course be executed during compilation,
that's the whole point of macros anyway. I would consider macros to be
more like "compiler extensions" that happen to live near the code.

I took a closer look at the relevant methods and it seems like it
should be doable.

Really looking forward to some feedback
 - Manuel

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to