为什么赋值会返回旧值而不是新值?

时间:2018-12-23 04:16:31

标签: ponylang

为什么赋值会返回以前的值而不是新值,例如:将ShowDialog分配给0而不是y?这是非常危险的不寻常行为,因为它违反了最小惊讶原则。

2

1 个答案:

答案 0 :(得分:0)

我很确定这样做是为了获得iso变量的一致结果。分配给iso变量将无法返回新值,因为这会创建别名。但是,确实有一个不那么令人惊讶的设计涉及到赋值运算符返回None和其他一些操作(交换?)以恢复被覆盖的原始值。