On Apr 21, 2005, at 6:28 AM, Fredrik Lundh wrote:

Glyph Lefkowitz wrote:

Despite being guilty of propagating this style for years myself, I have to disagree. Consider the
following network-conversation using Twisted style (which, I might add, would be generalizable to
other Twisted-like systems if they existed ;-)):


def strawman(self):
    def sayGoodbye(mingleResult):
        def goAway(goodbyeResult):
            self.loseConnection()
        self.send("goodbye").addCallback(goAway)
    def mingle(helloResult):
        self.send("nice weather we're having").addCallback(sayGoodbye)
    self.send("hello").addCallback(mingle)

def iterman(self): yield "hello" yield "nice weather we're having" yield "goodbye"

Which, more or less works, for a literal translation of the straw-man above. However, you're missing the point. These deferred operations actually return results. Generators offer no sane way to pass results back in. If they did, then this use case could be mostly served by generators.


-bob

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to