Pyro 0.8

Irmen de Jong
Tue, 04 Jan 00 03:11:17 GMT

PYRO - Python Remote Objects - version 0.8

by Irmen de Jong -


Pyro is an acronym for PYthon Remote Objects. It is a basic Distributed
Object Technology system written entirely in Python, and for use in Python
only. With this, it closely resembles Java's Remote Method Invocation (RMI).
It has less similarity to CORBA - which is a system- and language
independent Distributed Object Technology and has much more to offer than
Pyro or RMI.

However, Pyro has some interesting features:

- Naming Service which keeps record of the location of objects. The location
  of the NS can be discovered by use of a broadcast mechanism, if need be.

- Support for Python types only restricted by those that the standard
  'pickle' module handles (all builtin types, and user created classes).
  Objects as arguments are also supported when the code for those user
  defined classes is also available on the server side.

- Support for all Python argument types (variable argument lists and keyword
  arguments, *args and **keywords).

- Exceptions that occur in the remote object will actually be raised too on
  the client, just as if the error occured locally. Pyro's exception
  transportation mechanism makes this possible.

- Proxy compiler which automates the task of creating wrapper (proxy)

- Dynamic Proxies if you don't like to have pregenerated proxies.

- Full source code in Python

The most important changes since the previous version are:

- Separate system and user logs.
- Cleaner exception handling.
- Major documentation update: a whole new chapter with a practical guide
  about how to develop Pyro programs has been added.
- Various small changes such as Win32 GUID support, localhost optimization,
  delegate pattern for object implementation, new argument parser.


>From my Python homepage:

It comes with a Python-style license, but is otherwise free for
commercial and non-commercial use.


<P><A HREF="">Pyro
0.8</A> - Distributed Object system for Python.  (30-Dec-99)

Irmen de Jong -

----------- comp.lang.python.announce (moderated) ----------
Article Submission Address:
Python Language Home Page:
Python Quick Help Index: