- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Python bindings for ORBit                               ORBit-Python 1.99.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Author: Jason Tackaberry <tack@linux.com> 
Project Website: http://orbit-python.sault.org/

Requirements
------------

   Package       Version       Where?
    
   glib          1.3.10        ftp.gnome.org/pub/GNOME/pre-gnome2/sources
   linc          0.1.6         ftp.gnome.org/pub/GNOME/pre-gnome2/sources
   libIDL        0.7.1         ftp.gnome.org/pub/GNOME/pre-gnome2/sources
   ORBit2        2.3.103       ftp.gnome.org/pub/GNOME/pre-gnome2/sources
   python        2.2 *         ftp.python.org

   * python 2.0 will probably work fine, but it's untested.

   A CVS build will also require the following extra packages
   
   autoconf     2.52           ftp.gnu.org/pub/autoconf/
   automake     1.5            ftp.gnu.org/pub/automake
   
Installation
------------

Read the INSTALL file for a complete explanation, but the quick summary is:

   ./configure && make && make install

If you're installing from CVS, you'll need to run autogen.sh before running
configure, to this by typing:

   ./autogen.sh

Overview
--------

Python is an object-oriented, dynamically typed language.  These two
features make it quite ideal for seamless CORBA bindings.  Following in
CORBA::ORBit (the Perl bindings), ORBit-Python does away with the need for
an IDL compiler.  Throw away your stubs and skeletons!  ORBit-Python also
takes the dynamic approach one step further by automatically discovering
available IDL modules and transparently loading them when the corresponding
modules get imported.  When the IDL files are loaded, the appropriate
objects and classes are created dynamically.  This makes rapid prototyping
with CORBA a reality.

Most of the ORBit types are implemented, with the exception of the fixed
and long double types.  (Wide types are partially supported and currently
experimental.)  Also, only a fairly small subset of the POA is implemented.
Even in its current state, however, it is already being used successfully
in several commercial systems.

Considerable effort has been taken to adhere to the Python Language Mapping
Specification and remain compatible with other Python ORBs, but because of
its dynamic nature, certain extensions have been made that are specific to
ORBit-Python.  Still, if portability is important to you, code that uses
ORBit-Python can be moved to and from different ORBs with little or no
modification.

ORBit-Python began as the thesis project for my undergraduate degree at
Algoma University (www.auc.ca) in Ontario Canada, who now happens to be my
employer.  And although they don't exactly know it yet, some of the current
work is even funded by them. :)

If you have any feedback about ORBit-Python, feel free to email me, or
subscribe to the mailing list.


Documentation
-------------

See http://orbit-python.sault.org/ for documentation.


License
-------

This project is licensed under the LGPL.  See COPYING for details.
