Le Fri, 2 Aug 2013 22:48:33 +1000,
Nick Coghlan
I would also tweak the early binding syntax to require an additional keyword to make it read more like English:
seq = [] for i in range(10): seq.append(?.f) given i=i in: def f(): return i assert [f() for f in seq] == list(range(10))
I think any "inline function" proposal should focus on callback-based programming for its use cases. In this context, you usually have one or two callbacks (two in Twisted-style programming: one for success, one for failure), passed positionally to a consuming function: loop.create_connection((host, port), @cb, @eb) where: def cb(sock): # Do something with socket def eb(exc): logging.exception( "Failed connecting to %s:%s", host, port) Regards Antoine.