SWIG is a software development tool that connects programs written in C and C++
with a variety of high-level programming languages. SWIG is used with different
types of languages including common scripting languages such as Perl, Python,
Tcl/Tk and Ruby. The list of supported languages also includes non-scripting
languages such as C#, Common Lisp (Allegro CL), Java, Modula-3 and OCAML. Also
several interpreted and compiled Scheme implementations (Chicken, Guile,
MzScheme) are supported.