Tuples -- who needs 'em
Jonathan Giddy
jon at dgs.monash.edu.au
Wed Apr 5 21:37:07 EDT 2000
I nearly fell out of my tree when Alexander, Bob declared:
>I am wondering where the serious concern about mutable lists comes from, as
>it is a pattern in the responses I've gotten on this topic. For me, the
>immutable list is a relatively new concept, since I can't think of many
>other languages that have it. I'm a programming-language-design kind of
>person, and I never really saw mutable lists as a problem that needed
>solving.
How about C? Surely 'const' is an attempt to mark arrays as immutable.
Apparently, the ANSI C committee saw mutable arrays as a problem that
needed solving.
>I've used many Python-type languages that have mutable lists but
>not immutable ones, and if I don't want the elements to change they don't
>change -- I simply avoid the x[i] = y construct :-)
Avoiding the x[i] = y construct is much harder in non-trivial programs,
where assumptions about mutability need to be specified as part of the call
interface. Hence the proliferation of const in the C string library.
>And I still haven't
>heard from anyone about why there isn't similar concern about immutable
>dictionaries.
I could express some concern, but dictionaries are used much less than
sequences, and of all the places in my code where I make possibly needless
copies of a dictionary, it is usually to modify the dictionary with a clear
conscience, not something that immutability would solve.
Jon.
More information about the Python-list
mailing list