たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

再代入できる世界とできない世界の違い

今、数学の世界にいます

x = 1
y = x + 2
yは? => 3 (当然だろ)
-----------------------
今、プログラミングの世界にいます

x = 1
x = x + 2
xは? => 3 (当然だね)

相変わらず、プログラミングの世界にいます
x = 1
■■■■
x = x + 2
xは? => …確定しない。だって■■の中を見ないとわからん.
■■が空行だったら x == 3 だろうけど、
■■が x = x + 1だったら x == 4だもん.
-----------------------
数学の世界に戻りました

x = 1
■■■■
y = x + 2
yは? => 3 (当然だろ)

数学をするときに、 x = x + 1はしません.
つまり、数学では再代入をしません.
逆に言えば、プログラミングでは再代入が認められます.
そして上記の例が示したように、再代入を認めると、全ての式を見ない限り、値が確定しないのです.