Axon-1.0.2 For Series60 has been released!
This is a modified version of Axon 1.0.2 working (with limited
testing - the normal test suite passes) on the Nokia series 60
mobile phones. The key differences are:
* The debug subsystem has been disabled
* The directory structure has been flattened.
What is Axon?
Axon is a collection of pure python modules from the Kamaelia project
which allow you to build concurrent systems in a compositional manner
using communicating python generators. Components are python generators
are augmented by inbox and outbox queues (lists) for communication in a
CSP like fashion.
Put another way this allows you to build complex systems out of small
concurrent components in a fashion similar to unix pipelines, except
rather than being limited to just stdin/stdout you can have whatever
inputs/outputs you desire. (The defaults are inbox/outbox,
Axon should be relatively feature complete and the API stable, given
its design has been fleshed by use in the Kamaelia project. Given
Kamaelia components for building network servers, pygame wrappers &
vorbis playback have been written using Axon so far, we expect that
Axon should be useful for other areas where multiple activities need
to be handled within a single thread, whilst allowing the code to
remain looking more or less single threaded.
Documentation is generated directly from the test suite output.
What's new in version 1.0.2-series60?
* Initial release for series 60
* API documentation has been added (though a work in progress!)
* Examples from docs have been fully tested
* Changes in distribution structure to simplify transferring onto
Kamaelia is released under the Mozilla trilicense scheme (MPL/GPL/LGPL).
Specifically you may choose to accept either the Mozilla Public License
1.1, the GNU General Public License 2.0 or the Lesser General Public
License 2.1. Proprietary licensing details available upon request.
Where can I get it?
Axon is a sub-project of the BBC R&D Kamaelia project, which means Axon
is downloadable from http://sourceforge.net/projects/kamaelia/
Web pages are here:
http://kamaelia.sourceforge.net/Docs/Axon.htmlhttp://kamaelia.sourceforge.net/ (includes info on mailing lists)
ViewCVS access is available here:
British Broadcasting Corporation, Research and Development
Kingswood Warren, Surrey KT20 6NP
This message (and any attachments) may contain personal views
which are not the views of the BBC unless specifically stated.
The Chicago Python User Group, ChiPy, will have its next meeting on
Thursday, 13 January 2005, starting at 7pm. For more information on
ChiPy see http://chipy.org
This month the topic will be An Introduction To Jython, presented by
Brian Zimmer. Jython is an implementation of Python that runs on the
Java Virtual Machine.
Brian Zimmer has been using and developing Jython for over 4 years.
He is the author of zxJDBC, the Python DB API implementation for
Jython as well as recently taking over primary maintenance for the
Jython project. Brian recently receive a grant from the Python
Software Foundation for his project "Moving Jython Forward."
There will also be time to chat, and many opportunities to ask
questions. We encourage people at all levels to attend.
This month we will be meeting in the Monadnock Building Conference
Room 826, 53 W Jackson St, in downtown Chicago. This is immediately
adjacent to the blue line and an easy walk from all Metra stations and
the CTA red line, at the corner of Jackson and Dearborn.
Because the meeting is held after-hours for the building, we need to
provide a list of attendees. Please send your name (as it appears on
your ID) to tobis (at) mailbag dot com (if you aren't sure you'll
be able to come, send your name anyway).
If you drive, aim for the Congress Parkway exit from the Ryan (I-90/94)
or the east end of the Eisenhower (I-290). About 5 blocks east and 2
blocks north once you enter the street grid is the entrance you are
looking for. (Alternatively, exit Lakeshore at Congress and head west
about 5 blocks.)
There are numerous paid parking lots in the area. If you're adamantly
opposed to parking structures sometimes a meter can be found, especially
on the south side of Congress around Printer's Row.
Refreshments will be provided, but unfortunately there will be no live
network connection, so if you have something you want to show, bring it
along on your laptop.
We meet once a month, on the second Thursday of the month. If you
can't come this month, please join our mailing list:
WARNING: the last meeting of BayPIGgies at Stanford is currently
scheduled for March. Our host, Danny Yoo, is leaving Stanford, and we
need to find a new location. If you wish to assist with the search,
please join the BayPIGgies mailing list.
Meanwhile, let's all give hearty thanks to Danny for helping us find a
stable meeting location for so long!
The next meeting of BayPIGgies will be Thurs, January 13 at 7:30pm.
Danny Yoo leads a discussion of Python coding tricks and techniques.
Please join the BayPIGgies mailing list to discuss which sample code
will be demonstrated. The web site will contain more details.
BayPIGgies meetings are in Stanford, California. For more information
and directions, see http://www.baypiggies.net/
Before the meeting, we may meet at 6pm for dinner in downtown Palo Alto.
Discussion of dinner plans is handled on the BayPIGgies mailing list.
Advance notice: The February 10 meeting agenda has not been set. Please
send e-mail to baypiggies(a)baypiggies.net if you want to make a
Aahz (aahz(a)pythoncraft.com) <*> http://www.pythoncraft.com/
"19. A language that doesn't affect the way you think about programming,
is not worth knowing." --Alan Perlis
PyScript is a python module for producing high quality postscript
graphics. Rather than use a GUI to draw a picture, the picture is
programmed using python and the PyScript objects.
Some of the key features are:
* All scripting is done in python, which is a high level, easy to
learn, well developed scripting language.
* All the objects can be translated, scaled, rotated, ... in fact
any affine transformation.
* Plain text is automatically kerned.
* You can place abritrary LaTeX expressions on your figures.
* You can create your own figure objects, and develop a library of
* Output is publication quality.
LICENSE: Released under the GPL
The major change in this release is a complete rewrite of the Path
object. The internals have completely changed and there have been
some incompatible changes with previous versions but it's now much
closer to what was envisaged for the object. There have also been
many bug fixes and minor other improvements. For details see the
PyScript web page:
<P><A HREF="http://pyscript.sourceforge.net">PyScript 0.5</A> - a
python module for producing high quality postscript graphics; rather
than use a GUI to draw a picture, the picture is programmed using
python and the pyscript objects. (10-Jan-05)
Paranoia 1.2 has been released!
What is it?
Paranoia 1.2 is a port to Python from C of the old "paranoia" console
game that used to be distributed with the bsd-games package, but has
long since been removed. I ported this from C to Python as an exercise
in learning Python and because I was suffering a serious bout of
boredom and nostalgia.
Paranoia is based on the role playing game, by the same name, that was
very popular amoung a certain set during the 1980's and is making a
Note that this release is as identical to the oringal game as I could
make it within reason. I'm not a C coder, so I may have missed some
functionality, but I don't think so. If you notice any errors or have
any suggestions on cleaning up the Python code, please feel free to
Where can I get it?
paranoia.py and the original c code that it is based on are currently
man python always amazes me.
i was scratching an itch for a simple online gallery system and once
again i'm amazed at how fast i could write a respectable gallery system
and with a small amount of python code.
less than 300 lines of code but it's useful enough that i thought i
should stick it up on sourceforge.
here it is: http://pix.sf.net
The Argentinian Python User Group, PyAr, will have its fifth
meeting this Thursday, January 13th at 7:00pm. Please see
http://pyar.decode.com.ar/Wiki/ProximaReunion for details (in
Despite our agenda tends to be rather open, this time we would
like to cover these topics:
- Planning of our first sprint: we actually have two main subjects:
Messages Queues Manager with interfaces for SMTP (e-mail), SMPP
(SMS) and MM7 (MMS); and Genetic Algorithms.
- Website organization & content
- Means of promoting the group's activities, in order to increase
our member base.
We're meeting at Hip Hop Bar, Hipólito Yirigoyen 640, Ciudad de Buenos
Aires, starting at 19hs. We will be in the back room, so please ask
the barman for us.
For more information on PyAr see http://pyar.decode.com.ar (in Spanish),
or join our mailing list (Also in Spanish. For instructions see
We meet on the second Thursday of every month.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
La información contenida en este mensaje y cualquier archivo anexo al mismo,
son para uso exclusivo del destinatario y pueden contener información
confidencial o propietaria, cuya divulgación es sancionada por la ley.
Si Ud. No es uno de los destinatarios consignados o la persona responsable
de hacer llegar este mensaje a los destinatarios consignados, no está
autorizado a divulgar, copiar, distribuir o retener información (o parte de
ella) contenida en este mensaje. Por favor notifíquenos respondiendo al
remitente, borre el mensaje original y borre las copias (impresas o grabadas
en cualquier medio magnético) que pueda haber realizado del mismo.
Todas las opiniones contenidas en este mail son propias del autor del
mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones
Personales S.A. o alguna empresa asociada.
Los mensajes electrónicos pueden ser alterados, motivo por el cual
Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación
cualquiera sea el resultante de este mensaje.
What is it?
* itools.uri -- an API to manage URIs, to identify and locate resources.
* itools.resources -- an abstraction layer over resources that let to
manage them with a consistent API, independently of where they are
* itools.handlers -- resource handlers infrastructure (resource
handlers are non persistent classes that add specific semantics to
resources). This package also includes several handlers out of the
* itools.xml -- XML infrastructure, includes resource handlers for XML,
XHTML and HTML documents. Plus the Simple Template Language.
* itools.i18n -- tools for language negotiation and text segmentation.
* itools.workflow -- represent workflows as automatons, objects can move
from one state to another through transitions, classes can add specific
semantics to states and transitions.
* itools.catalog -- An Index & Search engine.
- Now "get_resources" is an iterator that returns a resource (not a name)
at a time.
- Memory folders provide "get_atime".
- Add the methods "get_handler_names", "get_handlers" and "has_handler".
- The methods "get_resource", "has_resource", "set_resource", etc. have
been removed. Access them throug the "resource" attribute, or use the
equivalent handler methods ("get_handler_names", etc).
- Now text handlers only must define the method "to_unicode", which now
accepts the optional parameter encoding.
- The methods "__str__" and "__unicode__" have been removed. Use instead
"to_str" and "to_unicode".
- Serialization and de-serialization code has been moved from "xml.Schema"
to "handlers.IO". Now the code serializes and de-serializes to and from
- The architecture has been cleaned and simplified, specially for
whose API has changed.
- The new method "traverse2" makes "walk" obsolete.
Simple Template Language
- The "stl:if" and "stl:attributes" expressions accept the new "not"
operator. This change makes the "stl:ifnot" statement obsolete.
- Now the catalog follows the load/save logic. As a side effect the index
and unindex operation has been speeded up but a factor of 2,
- Remove the "__init__" method from the "WorkflowAware" class to avoid
conflicts with handler classes. Now the method "enter_workflow" must
be called explicitly.
- Re-write part of the introduction.
- Re-organize the handler chapters. Explain some things for the first
explain other things better.
- Download and Documentation, http://www.ikaaro.org/
- Mailing list, http://in-girum.net/mailman/listinfo/ikaaro
J. David Ibáñez
Itaapy <http://www.itaapy.com> Tel +33 (0)1 42 23 67 45
9 rue Darwin, 75018 Paris Fax +33 (0)1 53 28 27 88