Serpent:

A Real-Time Language for Music and Animation

Serpent is the scripting language for Aura, a platform for computer music, animation, and interactive systems. Serpent was designed and implemented as a stand-alone, general purpose interpreter. Serpent is perhaps ideal as a game scripting language due to its real-time design and support for external C++ objects and C functions. It is open source, and I would be happy to share code as well as future design and development with others.

I also use Serpent in my class, Computer Music Systems and Information Processing. To facilitate work in class, the default Serpent implementation is linked with support for MIDI I/O using PortMidi, access to a real-time clock, network communications, and a graphical interface toolkit based on wxWindows. The most well-maintained version of Serpent is in the course web pages:

An Introduction to Serpent

How to Get Serpent

Serpent sources and binaries can be found here. Serpent is also incorporated into Aura. Aura development is OS X based now, and Aura is not really ready for prime-time distribution. However, if you want to use Serpent with Aura, you can find Aura under the aurart project at SourceForge.

Roger B. Dannenberg, Jun 2009