Scripting C++ -- 2 -- a more concrete example.

Donovan Rebbechi elflord at panix.com
Thu Feb 28 19:22:16 EST 2002


In article <3C7E6642.2030202 at physics.ucsb.edu>, Craig Maloney wrote:
 
> If I use wrapper generators, it seems like there is a chance (e.g. using 
> SILOON/PDT or BOOST/PDT) that it would be possible to have the wrapper 
> code automatically generated.

Most of it. Using sip, I generate about 4 times as much code as I write, so
the ratio is pretty good. There are things sip doesn't do like mapping python
and C++ exceptions that I need to take care of manually.

> 2) Marshalling and Objects-by-value.
> When the "Crystal" computes its energy it should *NOT* have to marshall 
> calls to get at the atom data structures.  This is an operation that 
> will be repeated about 2.85 bijillllion times.  In CORBA, this is no 
> problem -- I would either have Crystal::addAtom take a valuetype (atoms 
> are easy enough to serialize), or I would use some "co-location" trick 
> so that the ORB knows that the atom *really* lives in the same address 
> space as the crystal.  Preferrably the former.
> 
> If using a wrapper generator (e.g. SILOON) I don't see a way around the 
> marshalling of the call to get at the atom data structure.

I don't really understand exactly what the problem is. 
> 
> Of course, this would be taken care of by a revamp of the design of the 
> class library... maybe making the crystal an atom factory that produces 
> new atoms in its own address space.  But I would like to avoid thinking 

Now I'm really confused. If you're not using CORBA, the atoms are in the
same address space, aren't they ?

-- 
Donovan



More information about the Python-list mailing list