>>688

メモリの値とターミナルの状態という機械状態を
S=<("x",Vx),("y",Vy),(T)>と表すとして
だとして、

x=1;
→ 関数(f1) --- f1 <("x",Vx),("y",Vy),(T)> = <("x",1),("y",Vy),(T)>
y=2;
→ 関数(f2) --- f2 <("x",Vx),("y",Vy),(T)> = <("x",Vx),("y",2),(T)>
x=x+y;
→ 関数f3 --- f3 <("x",Vx),("y",Vy),(T)> = <("x",Vx+Vy),("y",Vy),(T)>
print x;
→ 関数f4 --- f4 <("x",Vx),("y",Vy),(T)> = <("x",Vx),("y",Vy),(T++show Vx)>
print y;
→関数f5 --- f5 <("x",Vx),("y",Vy),(T)> = <("x",Vx),("y",Vy),(T++show Vy)>

で、これを(逐次実行は関数合成として理解できるので)関数合成すると
f5 . f4 . f3 . f2 . f1 <("x",Vx),("y",Vy),(T)> = <("x",3),("y",2),(T++ "3" ++ "2" )>
という関数になる。