[Python-Dev] PEP 318 (was re: redefining is) (original) (raw)

Raymond Hettinger python at rcn.com
Thu Mar 25 02:45:08 EST 2004


> Heh, another use for the class variant of PEP 318. Josiah's code > depends on knowing which classes have immutable instances, using a > hardcoded set of builtin types. With PEP318, one could do > > class foo [immutable]: > ... > > with an appropriate definition of immutable that either decorates the > class object or adds to the set of known immutables. Perhaps also with > code to catch and warn against obvious attempts at mutation of foos...

This PEP is losing its innocence.

Having been repeatedly confronted with FUD arguments in other contexts, I hate to put on that hat, but I do not think it wise to support too many varieties of weirdness. Heck, we've already got meta-classes for that.

One could even include the disclaimer that any code that modifies an instance that is supposed to be immutable, is inherantly broken and is not supported

I'm sensing an unnamed code smell.

Raymond



More information about the Python-Dev mailing list