Scripturian
The Scalable Alternative
To JSR-223

Status

Python

Jython 2.5.2 is natively supported. Jepp 2.4 is supported via its JSR-223 interface, and does not support invocation of entry points.

The former is 100% Java, while the latter uses a Java bridge to a natively compiled CPython of your choice, and is generally more complicated to install and performs poorly.

Ruby

JRuby 1.6.3 is natively supported.

Groovy

Groovy 1.8.1 is natively supported.

Clojure

Clojure 1.3.0 is natively supported.

Our implementation involves creating lightweight namespaces on-the-fly for each execution context. Clojure compilation to JVM bytecode is not supported, but it remains an open question, too, whether this would significantly improve performance. Clojure's highly dynamic nature would make compiled code quite uninteresting. It's likely that the JVM's optimization would work just as well on "interpreted" Clojure.

PHP

Quercus 4.0.18 is natively supported. Note that Quercus license is GPL, which puts limitations on your ability to distribute it with your product.

Note that Scripturian replaces PHP's scriptlet scheme with its own. Usage and performance should be identical, but Scripturian's scheme is more powerful than PHP's, because it allows for mixing languages in one file.

JavaScript

Rhino 1.7R3 is natively supported.

Note that Sun and OpenJDK's built-in JavaScript support is a simplified version of Rhino, which may limit the power of Scripturian, so that Mozilla's version is recommended.


Succinct

Succinct 1.0 is natively supported.

Velocity

Velocity 1.7 is natively supported.