Much like we have specifications for the syntax and the type system in Enso, we also need a specification of the language semantics. These documents specify the executable semantics of the Enso language.
The actionables for this section are:
- As we make more semantic determinations about the language these should be written down here.
This specification is broken down into the following sections:
- Bindings: The semantics of Enso’s binding expressions.
- Diagnostics: The semantics of Enso’s executable compiler diagnostics.
- Dispatch: The semantics of Enso’s dispatch system.
- Errors: The semantics of Enso’s various error systems.
- Evaluation: Enso’s evaluation semantics, including those of suspended computations.
- Modules: The semantics of Enso’s modules.
- Scoping: Enso’s scoping and identifier resolution rules.