And mutating through parameters does not affect functional purity in the theoretical sense if the function holds the only reference to it. It is comparable to taking one value and returning a new version of it.

Rigor is important in language design. If you cannot say ALWAYS, then the compiler will have to assume NEVER.

Reply via email to