James Harris a écrit :
On 18 Aug, 21:50, Chris Rebert <[email protected]> wrote:
(snip)
class node_type_1: def walk_tree(self): #code self.subtree.walk()class node_type_2: def walk_tree(self): #code self.subtree.walk() #etcInteresting idea.
Basic OO stuff, really. I'd say it's even the whole point of OO. (snip)
The tree is for a compiler. Initially the tree is for parsing of source code. Then it will need to be processed and changed as further compiler phases are written. I don't know yet whether it will be easier to modify the tree or to create a new one for each phase. So I guess whether I use the idea depends on the commonality of operations.
You may want to have a look at the "composite" and "visitor" design patterns. AST are canonical use case for these patterns.
HTH -- http://mail.python.org/mailman/listinfo/python-list
