标签: ponylang
为什么赋值会返回以前的值而不是新值,例如:将ShowDialog分配给0而不是y?这是非常危险的不寻常行为,因为它违反了最小惊讶原则。
ShowDialog
0
y
2
答案 0 :(得分:0)
我很确定这样做是为了获得iso变量的一致结果。分配给iso变量将无法返回新值,因为这会创建别名。但是,确实有一个不那么令人惊讶的设计涉及到赋值运算符返回None和其他一些操作(交换?)以恢复被覆盖的原始值。
iso
None