The Kawa language framework

Kawa is a framework written in Java for implementing high-level and dynamic languages, compiling them into Java bytecodes.

The Kawa distributions includes of other programming languages besides Scheme, including XQuery (Qexo) and Emacs Lisp (JEmacs).

For a technical overview of Kawa, see these http://www.gnu.org/software/kawa/internals/index.html. Javadoc generated documentation of the Kawa classes is also available. The packages gnu.bytecode, gnu.math, gnu.lists, gnu.xml, gnu.expr, gnu.mapping, and gnu.text, are used by Kawa, and distributed with it, but may be independently useful.

This article explains how to use gnu.bytecode to compile regular expressions to bytecode.