Currently the default type is described as "immutable" but in realty it's just a "copy-on-write" instance. It would make more sense if the default instance is mutable, with wrapper to make it immutable.