Expression semantics

Complexity guarantees

Invariants

Models

Result (*)()

Notes

[1]
Two different invocations of f may return different results:
a Generator may refer to local state, perform I/O, and
so on. The expression f() is permitted to change f's state; f
might, for example, represent a pseudo-random number generator.