
Antoine Pitrou wrote:
Greg, I find this qualification ("obfuscation") a bit offensive...
Sorry, I don't mean that personally. The fact is that it does look obfuscated to my eyes, and I'd be surprised if I were the only person who thinks so.
(and, actually, I don't understand how "yield from" helps for a depth-first traversal. Could you post an example of it?)
Traversing a binary tree with a non-generator: def traverse(node): if node: process_node(node) traverse(node.left) traverse(node.right) Traversing it with a generator: def traverse(node): if node: yield process_node(node) yield from traverse(node.left) yield from traverse(node.right) Do you still think an unrolled version would be equally clear? If so, you have extremely different tastes from me! -- Greg