I'd like to announce Pyrolite 1.1, a lightweight Pyro client library for Java 
and .NET

"what is a java/.net library doing in this Python newsgroup?"
If you've got a Python application and you find yourself wanting to access it 
from the
harsh world of java or .net, Pyrolite could be of help. This library is meant 
to connect
a java or .net program to Python in a very simple way, using the Pyro protocol. 
Pyro is
a remote object library that is written for Python. Pyro itself can also be 
used in
Jython or IronPython, so you can already call Python applications from java or 
.net
(using Pyro), but sometimes that is just too much weight if you only need to 
call a few
methods. So I decided to explore the possibilities of a thin client-only 
library for
java and .Net.

Download Pyrolite here:   http://irmen.home.xs4all.nl/pyrolite/
(Readme.txt, java jar, .NET assembly DLL, source code archive, javadocs).
Readonly subversion access:   svn://svn.razorvine.net/Various/Pyrolite/
More info on Pyro:  http://irmen.home.xs4all.nl/pyro/


---DETAILS---

Pyrolite allows you to connect your Java or .NET program to Python in an 
extremely
straightforward way, using the Pyro protocol. Include this tiny library 
(~50kb), and off
you go. It contains:
- an almost fully functional pickle implementation (protocol 2)
- a fully functional unpickle implementation (protocols 0,1,2,3)
- fairly intelligent mapping of Python data types to Java/.NET data types and 
vice versa
- ofcourse, a subset of the client-side of the Pyro protocol and proxy logic.

Example program (java): http://paste.pocoo.org/show/438990/
The .NET version of this would be almost equivalent.

The Pyrolite source archive includes all source code, a couple of test 
programs, and a
large amount of unit tests (everything in java and C#). There is not much 
documentation
though - use the source, Luke... (or browse the javadocs).

Pyrolite only supports Pyro 4.x.
Pyrolite for java requires java 1.5. The project is done in Pycharm.
Pyrolite for .NET requires .NET 3.5 or Mono. The solution is done in
sharpdevelop/monodevelop (but probably works in visual studio too).


I've done quite some work to make this a stable and usable piece of software but
consider it an experiment, or a beta version. I am quite interested in your 
thoughts
about it. Let me know if you find it useful!


Irmen de Jong
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

        Support the Python Software Foundation:
        http://www.python.org/psf/donations/

Reply via email to