On Mon, Feb 27, 2012 at 11:45 AM, Mark Janssen
On Mon, Feb 27, 2012 at 11:35 AM, Rob Cliffe
wrote: I suggested a "mutable" attribute some time ago. This could lead to finally doing away with one of Python's FAQs: Why does python have lists AND tuples? They could be unified into a single type. Rob Cliffe.
Yeah, that would be cool. It would force (ok, *allow*) the documenting of any non-mutable attributes (i.e. when they're mutable, and why they're being set immutable, etc.).
There an interesting question, then, should the mutable bit be on the Object itself (the whole type) or in each instance....? There's probably no "provable" or abstract answer to this, but rather just an organization principle to the language....
In contrast to a flag on objects, one alternative is to have a __mutable__() method for immutable types and __immutable__() for mutable types. I'd be nervous about being able to make an immutable object mutable at an arbitrary moment with the associated effect on the hash of the object. -eric