[Stackless] Dining Philosophers with Join Patterns and Stackless.py

Richard Tew richard.m.tew at gmail.com
Wed Aug 24 12:08:22 CEST 2011


On Mon, Aug 22, 2011 at 5:31 PM, Andrew Francis <andrewfr_ice at yahoo.com> wrote:
> As I stated in a previous post, I have written a new version of stackless.py
> incorporating a concept called join patterns. Join patterns build up on the
> work I have done with stackless.select(). I am still experimenting with the
> API amongst other things. So things look rough. When I get stuff stabilized,
> I'll post a new version of stackless.py in the stackless repository.
...
> I would appreciate feedback.

Hi Andrew,

It is always good to see people working on Stackless-related projects.
 My feedback however, may not be helpful, but feedback it is.  It may
be that I alone in these thoughts, so feel free to dismiss them and
carry on! :-)

First the superficial stuff.  Dining philosophers is boring and
academic.  It wasn't interesting to me in university, it isn't now,
and its lack of usefulness hides the usefulness of whatever implements
it.  I think that what you are doing is interesting, and a
straightforward practical example would better serve to illustrate
this.  Also gmail displays your mail in a mono-type font, this makes
it appear monotonous and makes me even less likely to force myself to
read an implementation of dining philosophers - but that's probably
gmail and not your email.

Next your join patterns and select.  When I read the code I don't
understand it.  I think that there has to be a simpler interface than
arcane terms like "joinPattern", "JoinReceiveChanop" and
"receiveCase".  However, I think I would need that practical example
where this is useful before I could suggest something better.  I
expect that the only way to make a straightforward and easy to use
interface would be if the language facilitated it, and as you are
using pypy I believe, that's actually a possibility.

Anyway hope this is of some help,

Cheers,
Richard.



More information about the Stackless mailing list