There is only one drawback to not having leoAst.py be part of python's stdlib. The python devs will never be responsible for updating leoAst.py when python adds new kinds of
ast nodes.
New ast nodes are sometimes required to support new language features, especially language features that require new syntax or keywords. Python has added new nodes fairly often in the past. I have no idea how often new nodes will be added in future.
I am looking for a Leo dev who might consider being responsible for leoAst.py after I am gone. This seems necessary because leoAst.py is actually a stand-alone project. Supporting a new ast node in leoAst.py will be straightforward:
- Add a visitor for the new node.
- Add one or more unit tests that fully cover the new visitor.
That's about it. Please let me know if you think you might be interested in learning more about leoAst.py. I'll be writing a guide to maintainers as part of putting the finishing touches on leoAst.py.
Edward