다음을 통해 공유


Let

Let 식

let 식을 사용하여 변수의 중간 계산에서 값을 캡처할 수 있습니다.

let 식:
      letvariable-listinexpression
variable-list:
      변수
      variable
,variable-list
변수:
      variable-name
=expression
variable-name:
      identifier

다음 예제에서는 변수에 계산 및 저장되는 중간 결과를 보여 줍니다z. xy그러면 후속 계산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]