Guile is a Scheme interpreter packaged as a library, designed to be linked into your C or C++ programs to make them extensible, like Emacs.

Scheme makes a great glue language. Basically, you code up your favorite data structures and algorithms in fast C code, and then make them visible to the Scheme world as new datatypes, with functions that operate on them.

Guile is R4RS now, and 1.3 will be too. We want to support R5RS soon.