In getting the C++ modules for parsing working, a number of improvements were made to the structure of the repository and the functioning of the Python module.
At the moment it appears that using compiled modules for parsing does not effect runtime much, if at all, since most time is (likely) spent in the visitors, which are pure Python.
The added build and distribution complexity is likely not worth any difficult-to-identify improvement in parsing; especially if interoperability with multiple flavors of Python is to be maintained.
Some of the changes in this PR would support future developments which use compiled parsers, and possibly visitors; should such a thing be necessary.
In getting the C++ modules for parsing working, a number of improvements were made to the structure of the repository and the functioning of the Python module.
At the moment it appears that using compiled modules for parsing does not effect runtime much, if at all, since most time is (likely) spent in the visitors, which are pure Python. The added build and distribution complexity is likely not worth any difficult-to-identify improvement in parsing; especially if interoperability with multiple flavors of Python is to be maintained.
Some of the changes in this PR would support future developments which use compiled parsers, and possibly visitors; should such a thing be necessary.