All current dictionary types allow an object to be copied and a new object returned. But in a type in which all dictionaries have external names (e.g. a key-value disk store like BDB or a database table), simple copying won't work.A consequence of this is that types that are naturally mutational (like both the above types) cannot be provided with functional equivalents.I don't know what to do about this.