On Thursday, 2 September 2021 at 23:12:28 UTC, Steven
Schveighoffer wrote:
[...]
immutable means "I can never change and *everything I point at*
can never change".
[...]
If that is how the language defines the keyword 'immutable' when
used in the definition of a pointer variable, then so be it.
I would, however, suggest that the additional
'action-at-a-distance' implication (freezing not just the
variable itself, but also it's target) is inconsistent with the
definition of 'immutable' with other variable types.
Surely it would be better to reserve 'immutable' on a pointer to
mean simply set-once on the pointer itself (with no implications
for whatever the pointer is pointing to), and another keyword
('blocked'?) for the current definition?