
As I remember, the proposal is or would have to be to give code objects a new attribute -- co_ast. This would require an addition to marshal to compress and uncompress asts. It would expand both on-disk .pyc files and even more, in-memory code objects. On 7/2/2015 4:25 PM, Neil Girdhar wrote:
Why would it require "a lot of extra memory"? A program text size is measured in megabytes, and the AST is typically more compact than the code as text.
Why do you think that? Each text token becomes an node object that is a minimun 56 bytes (on my 64-bit Win7 3.5). For instance, a one-byte '+' (in all-ascii code) balloons to at least 56 bytes in the ast and compiled back down to 1 byte in the byte code. I expect the uncompressed in-memory size of asts to be several times the current size of corresponding code objects. -- Terry Jan Reedy