← Revision 45 as of 2008-11-15 14:00:11
converted to 1.6 markup
|Deletions are marked like this.||Additions are marked like this.|
|Line 1:||Line 1:|
|The Boost Python Library allows the use of C/C++ from Python. It is part of the larger boost package (http://www.boost.org).||'''Boost.Python''' binds C++ and Python. Read [[/GettingStarted]] for an introduction.|
|Line 3:||Line 3:|
|Use the Boost Python Library to quickly and easily export a C++ library to Python such that the Python interface is very similar to the C++ interface. It is designed to be minimally intrusive on your C++ design. In most cases, you should not have to alter your C++ classes in any way in order to use them with Boost.Python. The system should simply ''reflect'' your C++ classes and functions into Python.
A summary of the development goals is available on the Python [http://www.python.org/sigs/c++-sig/ C++-sig] page, which also serves as a mailing list for users of both versions of the library. A preview of the v2 documentation is available [http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/boost/boost/libs/python/doc/v2/index.html?rev=HEAD&content-type=text/html here], and instructions for getting started with a prerelease are available upon request.
More on http://www.boost.org/libs/python/doc/index.html
While v2 is being developed, this page seems like a good place to assemble v2 intro and tutorial.
|This page serves as a forum to gather peoples' experience and as a
cookbook, as it is more dynamic by nature and open to contributors.
|Line 12:||Line 7:|
| * ["boost.python/FAQ"]
| * [[/GettingStarted]]
* [[/module]] level: def,scope
|Line 19:||Line 23:|
| 1. boost.python/SimpleExample
| 1. /SimpleExample
|Line 31:||Line 36:|
From David Abrahams:
Boost.Python is designed with the idea in mind that users never touch a Py``Object*.
Boost.Python depends on quite a few of the other boost libraries (possibly a few others):
* mpl - currently in prerelease
IIUC, ["weave"] can be used for embedding nontrivial C++ code, if you're
willing to stick it all inside one function body. Furthermore, tools like
weave.blitz() can make an enormous difference by compiling an entire C++
expression template corresponding to an arbitrarily complicated Python
expression. Surely that's nontrivial. It's definitely ''cool''. I think weave
offers enormous power to the person who's programming mostly in Python.
Boost.Python binds C++ and Python. Read /GettingStarted for an introduction.
This page serves as a forum to gather peoples' experience and as a cookbook, as it is more dynamic by nature and open to contributors.
/module level: def,scope