SPIRO - Simple Python Interface to Remote Objects


SPIRO is an simple ORB (Object-Request Broker) which allows objects to be shared between two or more python (and/or Jython) processes.

Feature Summary

  • Handy bridge between cPython and Java (via jython)
  • You can talk to java libs/classes/functions, without losing access to CPython modules that have binary components (and are not available in jython).
  • Servers and clients can run in cPython or Jython
  • For C->Java bridging, server can be built into a standalone .jar file
  • Each client connection has its own private namespace on the server, or can share a namespace with other clients
  • All objects are stored on the server, manipulated through proxy objects on the client
  • Exceptions occuring on the server get passed back to the client
  • Client can pass callback functions to server
  • Forever free (as in speech, and as in beer), and open source


  • Version - 0.1.1 (not yet released)
  • Stability is not guaranteed
  • You cannot subclass across server-client boundaries
  • API is not stable, may change with each new release.

SPIRO in launchpad: https://launchpad.net/spiro/
Original SPIRO homepage: http://www.freenet.org.nz/python/spiro/