[Python-Dev] Alternative implementation of string interning
Oren Tirosh
oren-py-d@hishome.net
Tue, 2 Jul 2002 20:55:07 +0300
On Tue, Jul 02, 2002 at 04:37:42PM +0200, Jack Jansen wrote:
>
> On Tuesday, July 2, 2002, at 03:57 , Oren Tirosh wrote:
> >> Uhm... I'm confused: macimport stores a pointer to the object if it's
> >> interned (the object in question is one of the strings in sys.path). It
> >> didn't INCREF the object, and that wasn't needed up until now because
> >> interned objects can never go away. However, if they can go away I
> >> would
> >> think that storing a pointer would definitely call for an INCREF...
> >
> > Are you saying that this code is not following reference counting rules
> > and got away with it only because interned strings are immortal?
>
> I'm afraid so. Or, actually, "afraid so" sounds too apologetic:-):
> interned
> strings were specifically defined to be immortal.
I know it says so in the doc, but I always tended to look at it as an
implementation limitation rather than a feature...
Oren