CORBA is a large system—too large for us to even scratch the surface in this text.
For more details, search the Web.
Other languages
As we discussed at the end of our extending coverage, you’ll also find direct support
for mixing Python with other languages, including FORTRAN, Objective-C, and
others. Many support both extending (calling out to the integrated languages) as
well as embedding (handling calls from the integrated language). See the prior
discussion and the Web for more details. Some observers might also include the
emerging pyjamas system in this category—by compiling Python code to JavaScript
code, it allows Python programs to access AJAX and web browser–based APIs in
the context of the Rich Internet Applications discussed earlier in this book; see
Chapters 7, 12, and 16.
Network-based integration protocols
Finally, there is also support in the Python world for Internet-based data transport
protocols, including SOAP, and XML-RPC. By routing calls across networks such
systems support distributed architectures, and give rise to the notion of web serv-
ices. XML-RPC is supported by a standard library module in Python, but search
the Web for more details on these protocols.
As you can see, there are many options in the integration domain. Perhaps the best
parting advice I can give you is simply that different tools are meant for different tasks.
C extension modules and types are ideal at optimizing systems and integrating libraries,
but frameworks offer other ways to integrate components—Jython and IronPython for
using Java and .NETs, COM for reusing and publishing objects on Windows, XML-
RPC for distributed services, and so on. As always, the best tools for your programs
will almost certainly be the best tools for your programs.
1540 | Chapter 20: Python/C Integration