x = x + 1 is confusing and obviously wrong
FlorentBecker opened this issue · 1 comments
FlorentBecker commented
Assignments where a given variable appears both on the left and right of the =
are confusing and wrong. Take x = x + 1
, there is no value of x such the equality holds. The mathematically correct thing to do in such a case is to set x
to NO!
. More generally, any assignment where the same variable appears on both sides should set all involved variables to NO!
.
Incrementing x
then looks like:
// The Value Formerly Known As
let tvfka = fn(a) {
return a;
}
x = 42;
old_x = tvfka(x);
x = old_x + 1;
peterolson commented
An exception should be made for assignments where the left and right side are the same. For example,
x = x; // no problem
x = x + 1; // NO!