[Python-Dev] relation between Python.asdl and Tools/compiler/ast.txt (original) (raw)

Yoann Padioleau yoann.padioleau at facebook.com
Fri Jan 8 23:59:52 CET 2010


On Jan 7, 2010, at 1:16 PM, Martin v. Löwis wrote:

astgen.py is not used to process asdl files; ast.txt lives right next to astgen.py. Instead, the asdl file is processed by Parser/asdlc.py.

Yes, I know that. That's why I asked about the relation between ast.txt and Python.adsl. If internally the parser uses the .adsl, but expose as a reflection mechanism things that were generated from ast.txt, then there could be a mismatch. Where does ast.txt comes from ? Shouldn't it be generated itself from Python.adsl ? What you may not be aware of is that Tools/compiler (and the compiler package that it builds on) are both unused and unmaintained.

I see. So if people want to analyze python code they have to use other tools (like rope?) ? or use reflection ?

If the package stops working correctly - tough luck.

So we would have

Python.adsl ----????----> ast.txt ---- astgen.py ---> ast.py containing all the UnarySub, Expression, classes that represents a Python AST. No - what actually happens in Python 3.x is this: both the compiler package and Tools/compiler are removed.

Ok. I will then create my own ast classes generator.

Thanks.

Regards, Martin



More information about the Python-Dev mailing list