Sandboxing is very useful. You need only look at all the trylanguage sites to get an idea about how useful it can be. Java has very good built in sandboxing, but that isn't really enough for Clojure. The Java sandbox can prevent I/O and things that can damage the system the code runs on. This makes sandboxing Clojure easier, but not a done deal. The hard part is not sandboxing the state of the system, but instead the state of Clojure itself. In this talk, I'll talk about the Java sandbox, how we use it in Clojail, and how Clojail itself works. This will also be a bit of an introduction to sandboxing and should provide you enough information to use Clojail in your own code. Finally, I'll talk about and show example usages of Clojail in places like lazybot, my IRC bot, and websites such as try-clojure and 4clojure.
10th–12th November 2011