自分も「プログラマのための等式推論」的な記事書いてみたいとか思っていて、手頃な記事を氏が最近書かれていたのを思い出し、注意深く読むことにした。素人がちょっと分かったつもりになると人に教えたがるアレな病気を発症してるのです。 Haskell for all: Equational reasoning 手で式を置き換えることによって Haskell のコードは解釈できる 等式から等式へ置き換えて式を解釈することを等式推論 (equational reasoning) という Haskell では左辺と右辺は相互に置換可能 x = 5 という宣言をしたとする。このときプログラム中に x を見つけたら機械的に 5 に置き換えてよい (substitution) 。同様に 5 を見つけたら x に置き換えてよい Haskell ではこのような置き換えを行ってもプログラムのふるまいは変わらない (参照