Projects / Simplified Wrapper and Inte...

Simplified Wrapper and Interface Generator

SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. SWIG is primarily used with common scripting languages such as Perl, PHP, Python, Tcl/Tk, and Ruby, however the list of supported languages also includes non-scripting languages such as C#, Common Lisp (CLISP, Allegro CL, UFFI), Java, Modula-3, OCAML, Octave, and R. 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.

Tags
Licenses
Implementation

RSS Recent releases

  •  05 Jun 2010 01:02

    Release Notes: License changes. Much better nested class/struct support. Much improved template partial specialization and explicit specialization handling. Namespace support improved. Improved typemap and symbol table debugging. Numerous subtle typemap matching rule changes when using the default (SWIGTYPE) type. These now work much like C++ class template partial specialization matching. Warning and error display refinements. Wrapping of shared_ptr is improved. Various other bugfixes.

    •  21 Mar 2009 03:17

      Release Notes: This release adds small feature enhancements, improved C# std::vector wrappers, and bugfixes (mainly for Python, but also for Perl, MzScheme, CFFI, Allegrocl, and Ruby).

      •  18 Nov 2007 00:57

      Release Notes: shared_ptr support was added for Java and C#. STL support for Ruby was enhanced. Windows support for R was added. A long-standing memory leak in the PHP module was fixed. Numerous fixes and minor enhancements were made for Allegrocl, C#, cffi, Chicken, Guile, Java, Lua, Ocaml, Perl, PHP, Python, Ruby, and Tcl. Warning support was improved.

      •  12 Feb 2006 16:34

      Release Notes: Major features and bugfixes.

      •  16 Oct 2005 01:58

      Release Notes: A bug in anonymous typedef structures which was leading to strange behavior was fixed.

      Screenshot

      Project Spotlight

      Tardis

      A TimeMachine style backup system for Linux.

      Screenshot

      Project Spotlight

      Text2GUI

      A program that generates Java GUIs from natural language.