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

Yoann Padioleau yoann.padioleau at facebook.com
Thu Jan 7 22:07:55 CET 2010


On Jan 7, 2010, at 12:31 PM, Martin v. Löwis wrote:

I would like to use astgen.py to generate python classes corresponding to the AST of something I have defined in a .asdl file, along the line of what is apparently done for the python AST itself. I thought astgen.py would take as an argument a .asdl file, but apparently it instead process a file called ast.txt. Where does this file come from ? Is it generated from Python.asdl ? 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 ?

So we would have

Python.adsl ----????----> ast.txt ---- astgen.py ---> ast.py containing all the UnarySub, Expression, classes that represents a Python AST.

HTH, Martin



More information about the Python-Dev mailing list