Benjamin Peterson wrote:
> 2010/2/13 Jake McGuire <mcgu...@google.com>:
>> I have a local patch, but wanted to see if anyone had ideas or
>> experience weighing these tradeoffs.
> 
> Interning is really only useful because it speeds up dictionary
> lookups for identifiers. A better idea would be to just attach the
> same filename object in compiling and unmarshaling.

I would try to do the sharing during marshaling already. I agree that
the file names shouldn't be interned, though, so I propose to create a
new code TYPE_SHAREDSTRING, similar to TYPE_INTERNED. It would use the
same numbering as TYPE_INTERNED, so backreferences could continue to use
TYPE_STRINGREF.

Alternatively, a general sharing feature could be added to marshal,
sharing all hashable objects. However, before that gets added, I'd like
to see statistics how many objects get considered for sharing, and how
many back-references then get actually generated.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to