[Twisted-Python] Event queue in the Python std lib

Itamar Shtull-Trauring itamar at itamarst.org
Fri Jul 1 12:58:31 MDT 2005


On Fri, 2005-07-01 at 14:24 -0400, Glyph Lefkowitz wrote:

> 	- Implement something with asyncore
> 	- realize asyncore's deficiencies, start enhancing it
> 	- discover Twisted, re-implement networking code (from scratch)
> 
> If the event loop in Python provided similar interfaces to the one in 
> Twisted, the amount of work involved in stage 3 could be greatly reduced.

Alternatively, asyncore could just be deprecated, which would be a lot
easier to do, and people would start from the correct solution :)

> > 2. Installing separate package issues. As PyXML has shown, having a
> > separate package which overrides or extends a built-in stdlib API works
> > terribly.  http://www.amk.ca/conceit/xmlplus.html covers some of the
> > issues, but there's also - 
> 
> So let's not pretend that they're the same thing.  'from eventloop 
> import listenTCP' -> 'from twisted.internet import reactor'.  They can 
> just share a set of common interfaces.  The big problem with xmlplus was 
> that it changed the behavior of a built-in package, so let's not ever do 
> that again.   amk's article specifically recommends this solution.

Hm. That's a lot better than moving parts of Twisted, yes. I still think
it's silly.

> I don't think the issue is "less" or "more" but "better".  The Python 
> standard library is of a highly non-uniform quality.  Whether or not 
> Twisted gets added, I think asyncore should be removed, or at least 
> strongly deprecated.

Adding yet another event loop would just continue the tradition, I'm
sure; it took us quite a while to get to the quality we have now just in
terms of platform support. I suppose you could butcher our code by
ripping features out... but you'd just get a crippled piece of software.
The motivation is "so then people can move to something less suck"? Why
not just have them start from something good to begin with?





More information about the Twisted-Python mailing list