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 Software Development Compilers
Licenses BSD Revised
Implementation C C++ Perl PHP Python Tcl Ruby Java Lua C# Octave R

Tweet this project Short link

Rss Recent releases

  • Rrelease-mid
  •  21 Mar 2009 03:17
  • Rrelease-after

    Changes: 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).

    • Rrelease-mid
    •  18 Nov 2007 00:57
    • Rrelease-after

    Changes: 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.

    • Rrelease-mid
    •  12 Feb 2006 16:34
    • Rrelease-after

    Changes: Major features and bugfixes.

    • Rrelease-mid
    •  16 Oct 2005 01:58
    • Rrelease-after

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

    • Rrelease-mid
    •  09 Oct 2005 15:42
    • Rrelease-after

    Changes: New language modules: Lua, CLISP, and Common Lisp with UFFI. A big overhaul to the PHP module. A change to the way 'extern' is handled. Minor bugfixes specific to the C#, Java, Modula3, Ocaml, Allegro CL, XML, Lisp s-expressions, Tcl, Ruby, and Python modules. Other minor improvements and bugfixes.

    No-screenshot

    Project Spotlight

    GuiLoader

    A GuiXml file loading C library.

    25ee6b5a4813f2a281e907a54160ccd5_thumb

    Project Spotlight

    JFXtras

    Utilities and add-ons for the JavaFX script programming language.