Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Выражение Let
Выражение let можно использовать для записи значения из промежуточного вычисления в переменной.
let-expression:
let
переменная списка in
выражение
список переменных:
переменная
переменная списка переменных ,
variable:
Выражение переменной имени =
имя переменной:
идентификатор
В следующем примере показаны промежуточные результаты, вычисляемые и хранящиеся в переменных 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 следует учитывать следующее:
Выражения в списке переменных определяют новую область, содержащую идентификаторы из рабочей среды переменных и должны присутствовать при оценке выражений в рабочей среде переменных списка . Выражения в списке переменных могут ссылаться на одно другое.
Выражения в списке переменных должны оцениваться перед вычислением выражения в выражении let-expression .
Если к выражениям в списке переменных не обращаются, их не следует оценивать.
Ошибки, возникающие во время оценки выражений в выражении let-expression , распространяются.
Выражение let можно рассматривать как синтаксический сахар по неявным выражениям записи. Следующее выражение эквивалентно приведенному выше примеру:
[ x = 1 + 1,
y = 2 + 2,
z = y + 1,
result = x + y + z
][result]