1. Haskell の let 式は相互再帰的 Haskell で値を変数に束縛したい場合、let 式を使う。 束縛とは、束縛 (情報工学) – Wikipedia によると、 名前束縛(Name binding)あるいは名前結合とは、値を識別子に対応付けることを意味する。値に束縛された識別子を、その値への参照と呼ぶ。 例えば、値を変数に束縛した後、その変数を利用して計算を行う場合、 main = let x = 100 y = 200 z = x + y in print (x, y, z) -- (100,200,300) Haskell の let 式の特徴は、束縛した変数を相互再帰的に利用できること。 3.12 let 式 によると、 Let 式 は let { d1 ; ... ; dn } in e という一般形式を持ち、入れ子でレキシカルスコープで相互再帰的な宣言リスト (