Scripturian is a library that makes it easy to integrate various programming and templating languages into your JVM-based software. It is designed from the ground-up for high performance concurrent execution, and as such offers a scalable alternative to the Java scripting standard (JSR-223).
The manual will introduce you to Scripturian's main features, which set it apart from JSR-223:
Much effort has been put into making sure all supported languages conform to an abstract execution context model, which lets you reuse the same executables in concurrent threads, while cleanly separating global state, stdout, and services.
Furthermore, all of Scripturian's subsystems (document loaders, code compilers, code caches) have been designed with high-concurrency in mind.
An alternative (and entirely optional) way of composing Scripturian executables allows you to mix plain text and "scriptlets," in the style of PHP, JSP and ASP. This lets Scripturian serve as a powerful templating solution for generating text and textual formats, such as HTML and XML.
Scripturian has facilities for mixing scriptlets of multiple programming and templating languages in a single document.
Scripturian allows you to easily bootstrap JVM applications using any of the supported languages, without needing a Java "main" method or class. This is useful for:
1) developing and deploying applications on the JVM using various dynamic languages without ever having to "drop down" to Java code, and 2) quick and easy bootstrapping of pure Java applications using scripting languages, which, unlike Java, can be edited on-the-fly without re-compilation.
Programming Languages Supported
- Python (via Jython or Jepp)
- Ruby (via JRuby)
- PHP (via Quercus)
- Lua (via Luaj)