compilers moreoverthe py and pyfort systems provide integration with fortran codeand other tools provide access to languages such as delphi and objective- among thesethe pyobjc project aims to provide bridge between python and objective-cthis supports writing cocoa gui applications on mac os in python search the web for details on other language integration tools also look for wiki page currently at because many of these systems support bidirectional control flows--both extending and embedding--we'll return to this category at the end of this in the context of integration at large firstthoughwe need to shift our perspective degrees to explore the other mode of python/ integrationembedding mixing python and +python' standard implementation is currently coded in cso all the normal rules about mixing programs with +programs apply to the python interpreter in factthere is nothing special about python in this contextbut here are few pointers when embedding python in +programthere are no special rules to follow simply link in the python library and call its functions from +python' header files automatically wrap themselves in extern "cdeclarations to suppress +name mangling hencethe python library looks like any other component to ++there is no need to recompile python itself with +compiler when extending python with +componentspython header files are still +friendlyso python api calls in +extensions work like any other ++-to- call but be sure to wrap the parts of your extension code made visible to python with extern "cdeclarations so that they can be called by python' code for exampleto wrap +classswig generates +extension module that declares its initialization function this way embedding python in coverview so far in this we've explored only half of the python/ integration picturecalling services from python this mode is perhaps the most commonly deployedit allows programmers to speed up operations by moving them to and to utilize external libraries by wrapping them in extension modules and types but the inverse can be just as usefulcalling python from by delegating selected components of an application to embedded python codewe can open them up to onsite changes without having to ship or rebuild system' full code base this section tells this other half of the python/ integration tale it introduces the python interfaces that make it possible for programs written in -compatible python/ integration