.NET tools, components, libraries and add-ins [NEW] My favorites| sign in | create your account  
ASP.NET hosting
Advertise here! Contact us to know the options

SWIG

 Home Page Home Page

Categories: Interoperability

Latest version: 1.3.33
Added 2005-02-10

Development tool that connects programs written in C and C++ with a variety of high-level programming languages.
SWIG (Simplified Wrapper and Interface Generator) 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. 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.

The C# module offers an automated way of accessing existing C/C++ code from .NET languages. The wrapper code implementation uses the Platform Invoke (PInvoke) interface to access natively compiled C/C++ code. Swig C# works equally well on non-Microsoft operating systems such as Linux, Solaris and Apple Mac using Mono and Portable.NET.
The Java extension to SWIG offers a way of accessing existing C/C++ code from Java. SWIG writes the Java Native Interface (JNI) code for you. It is different to using the 'javah' tool as SWIG will wrap existing C/C++ code, whereas javah takes 'native' Java function declarations and creates C/C++ function prototypes. SWIG wraps C/C++ code using Java proxy classes and is useful if you want to have access to large amounts of C/C++ code from Java.

Built for .NET
Built for .NET
Built for Mono
Built for Mono
Free or free version available
Free or free version available
Source code provided
Source code provided
Advertise here! Contact us to know the options
Help the .NET community get a consensus on great tools. Display your favorite tools on your own website or on your blog.
Keep track of your favorite tools. Build your personal watch list.
Advertise here! Contact us to know the options
Hosted by Arvixe
part of the metaSapiens network: metaSapiens | .NET Jobs | Fabrice's weblog | .NET tools | Java tools | Dynamics AX tools | Tuneo | LINQ book | MapShares | BD indépendante | Parking partagé