Tillade
Et let-udtryk kan bruges til at hente en værdi fra en mellemliggende beregning i en variabel.
let-expression:
let
variable-list in
udtryk
variable-list:
variabel
variable ,
variable-list
variabel:
variable-name-udtryk =
variable-name:
identifikator
I følgende eksempel vises mellemliggende resultater, der beregnes og gemmes i variabler x
, , y
og z
som derefter bruges i en efterfølgende beregning x + y + z
:
let x = 1 + 1,
y = 2 + 2,
z = y + 1
in
x + y + z
Resultatet af dette udtryk er:
11 // (1 + 1) + (2 + 2) + (2 + 2 + 1)
Følgende gælder ved evaluering af udtryk i let-expression:
Udtrykkene på variabellisten definerer et nyt område, der indeholder id'erne fra variable-list-produktionen og skal være til stede, når udtrykkene evalueres i variable-list-produktionerne . Udtryk på variabellisten kan referere til hinanden.
Udtrykkene i variable-list skal evalueres, før udtrykket i let-expression evalueres.
Medmindre der er adgang til udtrykkene på variabellisten , må de ikke evalueres.
Fejl, der opstår under evalueringen af udtrykkene i let-expression , overføres.
Et let-udtryk kan ses som syntaktisk sukker over et implicit postudtryk. Følgende udtryk svarer til eksemplet ovenfor:
[ x = 1 + 1,
y = 2 + 2,
z = y + 1,
result = x + y + z
][result]