IIRC, There are also bindings for other languages, at least I know Ruby used to have one that I played with.