Let
let 식을 사용하여 변수의 중간 계산에서 값을 캡처할 수 있습니다.
let 식:
let
variable-list in
식
variable-list:
변수
variable ,
variable-list
변수:
variable-name =
식
variable-name:
identifier
다음 예제에서는 변수에 계산 및 저장되는 중간 결과를 보여 줍니다z
. x
y
그러면 후속 계산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 식 내의 식을 평가할 때 다음이 유지됩니다.
변수 목록의 식은 변수 목록 프로덕션의 식별자를 포함하는 새 범위를 정의하며 변수 목록 프로덕션 내에서 식을 평가할 때 있어야 합니다. 변수 목록 내의 식은 서로 참조할 수 있습니다.
let-expression의 식이 평가되기 전에 변수 목록 내의 식을 평가해야 합니다.
변수 목록의 식에 액세스하지 않는 한 평가해서는 안 됩니다.
let 식에서 식을 평가하는 동안 발생하는 오류는 전파됩니다.
let 식은 암시적 레코드 식에 대한 구문 설탕으로 볼 수 있습니다. 다음 식은 위의 예제와 동일합니다.
[ x = 1 + 1,
y = 2 + 2,
z = y + 1,
result = x + y + z
][result]