[Python-ideas] The async API of the future: Reactors

Terry Reedy tjreedy at udel.edu
Sat Oct 13 06:22:43 CEST 2012

On 10/12/2012 8:26 PM, Guido van Rossum wrote:
> On Fri, Oct 12, 2012 at 5:01 PM, Greg Ewing <greg.ewing at canterbury.ac.nz> wrote:

>> Can we please use a better term than "reactor" for this?
>> Its meaning is only obvious to someone familiar with Twisted.
>> Not being such a person, it's taken me a while to figure out
>> from this discussion that it refers to the central object
>> implementing the event loop, and not one of the user-supplied
>> objects that could equally well be described as "reacting"
>> to events.
>> Something like "dispatcher" would be clearer, IMO.
> Sorry about that. I'm afraid it's too late for this thread's subject
> line, but I will try to make sure that if and when this makes it into
> the standard library it'll have a more appropriate name. I would
> recommend event loop (which is the name I naturally would give it when
> asked out of context) or I/O loop, which is what Tornado apparently
> used. Dispatcher would not be my first choice.
> FWIW, it's not a completely Twisted-specific term:
> http://en.wikipedia.org/wiki/Reactor_pattern

Thanks for the clarification. Reactors react to events within an event 
loop* by dispatching them to handlers. Correct?

*Iteration rather than recursion is required because they continue the 
cycle indefinitely.

I am still fuzzy on edge-triggered versus level triggered in this 
context, as opposed to electronics.

Terry Jan Reedy

More information about the Python-ideas mailing list