トレーニング
let
Let 式を使用すると、変数内の中間計算から値をキャプチャできます。
let-expression:
let
variable-list in
expression
variable-list:
変数
variable ,
variable-list
variable:
variable-name =
expression
variable-name:
identifier
次の例では、中間結果が計算され、変数 x
、y
、z
に格納され、後続の計算 x + y + z
で使用されます。
let x = 1 + 1,
y = 2 + 2,
z = y + 1
in
x + y + z
この式の結果:
11 // (1 + 1) + (2 + 2) + (2 + 2 + 1)
let-expression 内の式を評価するとき、次が当てはまります。
変数一覧の式により、variable-list 作成からの識別子を含む新しい範囲が定義されます。また、変数一覧の式は、variable-list 作成内の式の評価時に存在する必要があります。 variable-list 内の式は互いを参照することがあります。
variable-list 内の式は、let-expression の式が評価される前に評価する必要があります。
variable-list の式がアクセスされない限り、式は評価できません。
let-expression の式の評価中に発生したエラーが伝えられます。
Let 式は、暗黙的なレコード式の見た目を構文的に改善するものと見なすことができます。 次の式は上の例に相当します。
[ x = 1 + 1,
y = 2 + 2,
z = y + 1,
result = x + y + z
][result]