評価のための環境

評価とは式を値になるまで単純化する計算過程です。 評価を実行するには、評価される式だけではなく、 その式の中にある名前を値に変換するために束縛の集合も必要です。 この束縛の集合は単なる連想配列で、しばしば (評価のための) 環境と呼ばれます。 例えば次の式を評価することを考えてみましょう。

let
  val PI = 3.14 and radius2 = 10.0 * 10.0 in PI * radius2
end

空の環境である ENV0 から開始します。 まず環境 ENV0 において 3.14 をそれ自身に、 10.0 * 10.0100.0 に評価します。 次に ENV0 拡張して、 PI から 3.14radius2 から 100.0 に変換する2つの束縛をともなう ENV1 を作ります。 それから ENV1 において PI * radius23.14 * radius2 に評価し、 さらに 3.14 * 100.0 に評価します。 最後に 314.0 が得られて、これが let 式の値になります。