Hi Christian: --- On Fri, 4/16/10, Christian Tismer <[email protected]> wrote:
> From: Christian Tismer <[email protected]> > Subject: Re: [Stackless] More on a Stackless Select > To: "Andrew Francis" <[email protected]> > Cc: "The Stackless Python Mailing List" <[email protected]> > Date: Friday, April 16, 2010, 8:55 PM > If you are using real channels to implement channel sets, > and you are not going to change the C code, then you definately > need one tasklet per channel, that blocks on it until there is > activity.Then the tasklet cleans up what is needed to clean up, and > sends or receives on the channel where the target tasklet is > waiting on. Yes Christian you are definitely right. Hence my initial post about being optimistic. A little bit of channel C code would be required to get a select to work. This is what I have gathered from prototying with stackless.py. I work with Stephan Diehl's stackless.py because it most closely approximates the stackless module (it has many problems but I admire Stephan's code and I appreciate his help). However my goals are: short term: figure out the minimum amount of C changes required to support a select like mechanism as either a C extension, or a Python module; long term: how best to implement a select like mechanism. Again, I am happy to do the ground work for exploration. In the process, this exercise is forcing me to look at actual Stackless Python C code. And if I have time, I will make changes to a private version of Stackless to see if my hunches are right and I will put in out so people can improve it or can it. Your new psyco module provides for a neat experiment. If I can figure out the minimum set of hooks - we can see how well psyco speeds up a Python based select. This should be fun. > Priorities? Forget it. Yes you are right. Slightly off topic. I had been reading go-lang nuts. There was topic on join calculus, a fancy term for implementing joins. I ought to throw in my two cents on the topic. I believe by having a select as a class rather than a language feature, I feel makes implementing different types of joins much easier in Stackless than Go. Off topic. What is it like in Iceland with that big volcanic eruption? :-) Cheers, Andrew _______________________________________________ Stackless mailing list [email protected] http://www.stackless.com/mailman/listinfo/stackless
