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, PHP, Python, Tcl, Ruby and PHP. The list of supported
languages also includes non-scripting languages such as C#, Common Lisp
(CLISP, Allegro CL, CFFI, UFFI), Java, Modula-3 and OCAML. Also several
interpreted and compiled Scheme implementations (Guile, MzScheme, Chicken) are
supported. SWIG is most commonly used to create high-level interpreted or
compiled programming environments, user interfaces, and as a tool for testing
and prototyping C/C++ software. SWIG can also export its parse tree in the
form of XML and Lisp s-expressions.

swig may build with support for the following:
    Tcl, Python, Perl, Java, GCJ, Guile, MzScheme, Ruby, PHP4, ocaml, Pike
    Chicken (csc/csi), C#, Lua, Allegro CL, clisp, R
