diff --git a/swigweb/compare.ht b/swigweb/compare.ht index a679b4c5b..96a0f068a 100644 --- a/swigweb/compare.ht +++ b/swigweb/compare.ht @@ -4,20 +4,7 @@ SWIG Features

SWIG Features

-In the last five years, dozens of extension building tools have been -released---most of which can be found from the SWIG links page. All of these tools attempt to -simplify the extension building process---and the documentation for -many of them make a point of comparing themselves to SWIG. What these -comparisons don't tell you is that they are almost always based on -SWIG-1.1, a rather old, but widely distributed release dating from -1997. To be fair, SWIG-1.1 is an easy target--it did have a lot of -limitations. However, all of this is "old news" and mostly irrelevant -to the current release. Therefore, this page hopes to set the record -straight on what SWIG supports and what it doesn't support. - -

-This information is based on the current release, SWIG-1.3.14. +This information is based on the current release, SWIG-1.3.16.

Code Generation

@@ -58,7 +45,7 @@ SWIG is capable of wrapping all of ANSI C. Features include: SWIG provides wrapping support for almost all of ANSI C++. -

SWIG knows C++

- -One of SWIG's greatest strengths is that it implements the full ANSI -C++ type system and it uses multi-pass compilation to gather a wide -range of information from input files. SWIG is fully aware of C++ -semantics and is able to automatically avoid a wide variety of -potential compilation problems. Also, by relying upon compiler technology, SWIG -is able to look at the interface and make intelligent decisions about the generation of wrappers. -This also allows SWIG to provide a highly flexible set of customization features. - -

Everything is allowed

- -When considering the use of a wrapper generation tool, it's important -to read the fine-print. Although other tools might offer different -features than SWIG, they often have major limitations that are rarely -advertised. For example, if a tool claims to "parse" C++, but -fails to implement a basic feature like typedef, then that tool -probably doesn't implement the type system correctly. Similarly, tools often -place artificial limits on fundamental things like the number of -allowed arguments to a function, supported datatypes, and so forth. -Even some tools that claim to be the "leading C++ -wrapping solution" are known to not support simple declarations -involving references, pointers, and other fundamental C++ -datatypes---simply because these declarations are unsafe and therefore -"not allowed." - -

-SWIG is by no means perfect and it does not claim do everything. However, a -fundamental goal of the SWIG project has been to provide basic wrapping -support for all of C++. In certain cases, this might be dangerous and -it might even require additional user input. Nevertheless, -SWIG gives you the freedom and the flexibility to handle difficult -real-world wrapping problems without artificial limits and without the -baggage of a programming morality agenda. - -

SWIG is documented

- -Since its initial release, SWIG has included hundreds of pages of user -documentation. This documentation describes every SWIG feature and -attempts to fully disclose SWIG's limitations (when applicable). Not -only that, the documentation specifically addresses some of the more -difficult wrapping problems. - -

The bottom line

- -Extension building is an important aspect of software development for -many C and C++ programmers. Fortunately, there are many different -tools that attempt to solve this problem. You should choose a tool -that you like and which works. We certainly hope that you -consider the use of SWIG. Better yet, we hope that you try it and like it. + + diff --git a/swigweb/index.ht b/swigweb/index.ht index 382b287ee..df78e7f1c 100644 --- a/swigweb/index.ht +++ b/swigweb/index.ht @@ -4,6 +4,16 @@ Simplified Wrapper and Interface Generator [ Japanese ] +

+

+ +"So, we caught one of our interns out back with our mission critical C++ +code, a couple of scripting languages, and SWIG. And that boy had the +nerve to call it a 'computer science' project. We killed him--had no +other choice." -- Anonymous + +
+

SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming @@ -27,18 +37,12 @@ noncommercial use.

-

SWIG-2.0 project

- -Essays related to the future of SWIG development and the ongoing -development work. - - +

News

-

News

+2002/10/14Join us in Austin for an intense 3-day course on + +Python-C++ extension building.

2002/10/14 diff --git a/swigweb/myths.ht b/swigweb/myths.ht index cd1b7c518..2a261e773 100644 --- a/swigweb/myths.ht +++ b/swigweb/myths.ht @@ -3,12 +3,6 @@ SWIG Myths

SWIG Myths

-
- -"Don't believe everything you read." - -
-

Here are some common misconceptions about SWIG that have occasionally appeared on other web pages and in articles--especially those that