update for 1.3.18

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4623 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Dave Beazley 2003-03-23 22:26:27 +00:00
commit fb919e7ad4
3 changed files with 82 additions and 6 deletions

View file

@ -35,19 +35,24 @@ Note : If you received SWIG on CD-ROM, you may want to upgrade to the latest rel
<p>
<a
href="http://prdownloads.sourceforge.net/swig/swig-1.3.17.tar.gz">SWIG
1.3.17</a> is the latest development release (2002/08/12). View the <a
href="http://prdownloads.sourceforge.net/swig/swig-1.3.18.tar.gz">SWIG
1.3.18</a> is the latest development release (2003/03/23). View the <a
href="release.html">release notes</a>. Windows users should download
<a
href="http://prdownloads.sourceforge.net/swig/swigwin-1.3.17.zip">swigwin-1.3.17</a>
href="http://prdownloads.sourceforge.net/swig/swigwin-1.3.18.zip">swigwin-1.3.18</a>
which includes a prebuilt executable. A Macintosh port
(macswig-1.3.17) also may be available from the SourceForge <a
(macswig-1.3.18) also may be available from the SourceForge <a
href="http://sourceforge.net/project/showfiles.php?group_id=1645">releases</a>
area.
<p>
<b>Note:</b> The following releases pertain to SWIG-1.1 which was a widely distributed release
from several years ago. Unless you really need backwards compatibility, you should use
SWIG-1.3.x instead of SWIG-1.1 (especially since 1.3 is much more capable).
<p>
<a href="http://prdownloads.sourceforge.net/swig/swig1.1p5.tar.gz">SWIG 1.1p5</a>
is the latest stable release (1998/02/05).
is the latest stable release of SWIG-1.1 (1998/02/05).
<b>Note (2000/01/18) </b>SWIG1.1p5 has a number of compilation issues
with ANSI C++ compilers and will probably generate a lot of compiler

View file

@ -10,7 +10,7 @@ C and C++ with a variety of high-level programming
languages. SWIG is primarily used with common scripting languages
such as Perl, Python, Tcl/Tk, Ruby, Guile and MzScheme, however the list of
<a href="compat.html#SupportedLanguages">supported languages</a> also includes
non-scripting languages such as Java, OCAML and CHICKEN. SWIG is most
non-scripting languages such as Java, OCAML, CHICKEN, and C#. SWIG is most
commonly used to create high-level interpreted programming
environments, user interfaces, and as a tool for testing and prototyping C/C++
software. SWIG may be freely used, distributed, and modified for commercial
@ -28,6 +28,16 @@ and noncommercial use.
<p>
<h3>News</h3>
<p>
<b>2003/3/23</b> Dave wins an NSF CAREER award to, well, work on the next generation version of
SWIG! Read more about it <a href="nsf.html">here</a>.
<p>
<b>2003/3/23</b>
<a href="http://prdownloads.sourceforge.net/swig/swig-1.3.18.tar.gz">SWIG-1.3.18</a> has been
released. This release includes a number of new language modules, new features, an improved
build environment, and a lot of minor bug fixes.
<p>
<b>2002/11/27</b>
An article about SWIG appears in <a href="http://www.cmagazine.jp/contents/200212.html">C Magazine</a> (Japanese).

61
swigweb/nsf.ht Normal file
View file

@ -0,0 +1,61 @@
SWIG and Typesystems
<h2>SWIG and Typesystems</h2>
<p>
For the past seven years, a considerable amount of effort has gone
into the development of SWIG and its support for various programming
languages. Currently, more than a <a href="guilty.html">dozen developers</a> work on the system
and there are thousands of users. However, almost all of SWIG's development
has been relatively ad-hoc---primarily driven by feature requests from
users. As SWIG's original author, coordinating all of this chaos has
always been a bit of challenge. In fact, it's been rather difficult to even
describe what SWIG "is" and "how it works" without using terms like
"magic" and, well, "more magic." Needless to say, this isn't the most
academic way to look it ;-).
<p>
A little over a year ago, I became interested in the relationship
between SWIG and work in the area of type systems. In order
to support advanced C++ features like namespaces and templates, a
significant amount of very difficult development work focused on the
SWIG type system. Moreover, this work resulted in a lot of old SWIG
features being folded into type system extensions. Because of this
work, I have now come to view SWIG as being mostly driven as an
extension of the C++ type system rather than an extension of a C++
parser. This difference is subtle, but it is the only way to really
understand how SWIG works at a fundamental level.
<p>
To the best of my knowledge, no one working on automatic C/C++ wrapper
generators has really approached the wrapping problem from the
standpoint of type systems. Instead, everyone seems to focus on the problem
of <em>parsing</em> C++, which, although important, is not enough to
really understand what is going on.
<p>
Starting in the summer of 2003, the NSF will be funding a
<a href="http://www.fastlane.nsf.gov/servlet/showaward?award=0237835">research
project</a> at the University of Chicago to explore the relationship
between type-systems and wrapper generation in more detail. A lot of
this work will involve SWIG and the semantics of its underlying type
system. Moreover, this work will be exploring some exciting new
features such as software contracts and improved mixed-language
debugging support. We're also going to try and make connections
between SWIG and related work in the area of programming languages.
<p>
What does this mean for the future of SWIG? Well, my hope is that
this work will make the system more capable, more reliable, and more
useful than ever. I think everyone will be pleasantly surprised with
some of the changes.
<p>
As always, I'd like to acknowledge everyone who has contributed to SWIG
over the years---thank you for your support!
<p>
Cheers,
<p>
Dave Beazley <br>
March 23, 2003