They spent a huge amount of complexity supporting mailing lists that claim mutated messages came FROM the original sender instead of FROM [email protected]. Is that use-case worth the additional effort?
n = 1000
a = {}
for i in range(n):
a[i] = str(i)
a = frozendict(a) # O(n) operation can be turned to O(1)
It is relatively easy for the JIT to detect the `frozendict` constructor, the `dict` input, and the single reference immediately overwritten. Not sure if this would ever be worth it.