Anthony Baxter <[EMAIL PROTECTED]> wrote: > Could someone involved give a short email laying out what concrete (no > pun intended) advantages this new compiler gives us?
One advantage is that it decreases the coupling between the parser and the backend of the compiler. For example, it should be possible to replace the parser without modifying a lot of the compiler. Also, the concrete syntax tree (CST) generated by Python's parser is not a convenient data structure to deal with. Anyone who's used the 'parser' module probably experienced the pain: >>> parser.ast2list(parser.suite('a = 1')) [257, [266, [267, [268, [269, [320, [298, [299, [300, [301, [303, [304, [305, [306, [307, [308, [309, [310, [311, [1, 'a']]]]]]]]]]]]]]], [22, '='], [320, [298, [299, [300, [301, [303, [304, [305, [306, [307, [308, [309, [310, [311, [2, '1']]]]]]]]]]]]]]]]], [4, '']]], [0, '']] > Does it just allow us to do new and interesting manipulations of > the code during compilation? Well, that's a pretty big deal, IMHO. For example, adding pychecker-like functionality should be straight forward now. I also hope some of the namespace optimizations get explored (e.g. PEP 267). > Cleaner, easier to maintain, or the like? At this point, the old and new compiler are pretty similar in terms of complexity. However, the new compiler is a much better base to build upon. Neil _______________________________________________ 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