Comment by netbioserror

3 days ago

Yeah, immutability should probably use a `let` keyword and compiler analysis should enforce value semantics on those declarations.

Agreed, using `var` keyword for something that is non-var-ying (aka immutable) is not very intuitive.

  • Mutability is distinct from variability. In Javascript only because it's a pretty widely known syntax:

        const f = (x) => {
          const y = x + 1;
          return y + 1;
        }
    

    y is an immutable variable. In f(3), y is 4, and in f(7), y is 8.

    I've only glanced at this Zen-C thing but I presume it's the same story.