Dela via


Låta

Let-uttryck

Ett let-uttryck kan användas för att avbilda ett värde från en mellanliggande beräkning i en variabel.

let-expression:
      letvariable-list in uttryck
variable-list:
      variabel
      variable
, variable-list
variabel:
      variabelnamnuttryck
=
variable-name:
      identifierare

I följande exempel visas mellanliggande resultat som beräknas och lagras i variablerna x, yoch z som sedan används i en efterföljande beräkning x + y + z:

let     x = 1 + 1,
        y = 2 + 2,
        z = y + 1 
in
        x + y + z

Resultatet av det här uttrycket är:

11  // (1 + 1) + (2 + 2) + (2 + 2 + 1)

Följande gäller vid utvärdering av uttryck i let-expression:

  • Uttrycken i variabellistan definierar ett nytt omfång som innehåller identifierarna från variabellistans produktion och måste finnas när du utvärderar uttrycken i produktionerna med variabellistan . Uttryck i variabellistan kan referera till varandra.

  • Uttrycken i variabellistan måste utvärderas innan uttrycket i let-expression utvärderas.

  • Såvida inte uttrycken i variabellistan används får de inte utvärderas.

  • Fel som utlöses under utvärderingen av uttrycken i let-expression sprids.

Ett let-uttryck kan ses som syntaktisk socker över ett implicit postuttryck. Följande uttryck motsvarar exemplet ovan:

[     x = 1 + 1,
      y = 2 + 2,
      z = y + 1,
      result = x + y + z 
][result]