[Pipet Devel] Fun with ORBs
Brad Chapman
chapmanb at arches.uga.edu
Sun Apr 30 15:48:23 EDT 2000
Hello all;
I've been workin' on setting up Loci to talk with GMS though a
corba interface. I've been attempting to use orbit-python
(http://projects.sault.org/orbit-python/) so we could stay with one
ORB implementation (ORBit) for the whole project.
However, now that I have gotten into actually using these
bindings, I'm running into a huge snag. The problem is that you can
only import the idl file (orbit-python uses this instead of generating
stub and skeleton code that you import) in the __main__ module, so
things will only work if you are running a simple program in a main
script. This is a known deficiency of orbit-python (ie. mentioned on
the TO-DO list), and prevents us from using orbit-python to do what we
want to do. I spent some time looking at the code and comparing it
to CORBA::ORBit (the perl bindings to ORBit, which implement a similar
idl import method) and I don't really see a simple fix for this
problem at all. The orbit-python project is also stalled (no new code
in a month and a half) so I'm not sure how things will progress
there...
So, I'm going to have to switch to a new ORB implementation for
the python part of the program so we can have something functional and
I wanted to try and get people's opinion on which ORB we should switch
to for python. Here are the choices:
Fnorb (http://www.fnorb.org/).
-----
Advantages:
o Easy to install becuase it is almost all python.
Disadvantages:
o Doesn't follow the official OMG python mapping
(http://www.omg.org/cgi-bin/doc?ptc/00-01-12) so it'll require code
changes later (not too big a deal for clients, but more of a pain for
servers).
o Pretty slow because of all the python.
o I think the license is for non-commerical use only.
ILU (ftp://ftp.parc.xerox.com/pub/ilu/ilu.html)
----
Advantages:
o Has both C and python bindings, so if we wanted to we could switch
to using only ILU.
o Has a compatible license (I'm pretty positive about this--they've
changed it since the problem with gnome or whatever).
Disadvantages:
o Their implementation of the official python mapping in the latest
release isn't quite correct due to mistakes in the OMG document, so
this will require some code changes later.
omniORBpy (http://www.uk.research.att.com/omniORB/omniORBpy/)
---------
Advantages:
o Follows the official mapping.
o Supposedly pretty fast.
o Has a compatible license (LGPL or GPL, your choice).
Disadvantages:
o Can be a pain to install (at least for me :-).
So anyways, those are our choices. What does everyone think about all
of this? I'd really like to hear everyone's opinion about what we
should do.
Thanks for listening.
Brad
More information about the Pipet-Devel
mailing list