This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
# Named `let`
A named `let` is an iteration and recursion form. It uses the same
syntactic keyword `let` as for local binding, but an identifier after
the `let` \(instead of an immediate open parenthesis\) triggers a
different parsing.
```racket
(letproc-id([arg-idinit-expr]...)
body...+)
```
A named `let` form is equivalent to
```racket
(letrec([proc-id(lambda(arg-id...)
body...+)])
(proc-idinit-expr...))
```
That is, a named `let` binds a function identifier that is visible only
in the function’s body, and it implicitly calls the function with the