How to Design Programs Languages

1`` | Beginning Student
2`` | Beginning Student with List Abbreviations
3`` | Intermediate Student
4`` | Intermediate Student with Lambda
5`` | Advanced Student
| Index

On this page:

letrec
let
let*

Version: 4.0.2
contents index
← prev up next →

#### 3.4`` letrec, let, and let*

(letrec ([id expr-for-let] ...) expr)

Similar to local, but essentially omitting the define for each definition.

A expr-for-let can be either an expression for a constant definition or a lambda form for a function definition.

(let ([id expr-for-let] ...) expr)

Like letrec, but the defined ids can be used only in the last expr, not the expr-for-lets next to the ids.

(let* ([id expr-for-let] ...) expr)

Like let, but each id can be used in any subsequent expr-for-let, in addition to expr.

contents index
← prev up next →