2020-05-15 13:41:26 +03:00
|
|
|
---
|
|
|
|
layout: section-summary
|
|
|
|
title: Enso's Semantics
|
|
|
|
category: semantics
|
|
|
|
tags: [semantics, readme]
|
|
|
|
order: 0
|
|
|
|
---
|
|
|
|
|
|
|
|
# Enso's Semantics
|
2020-07-21 15:59:40 +03:00
|
|
|
|
2020-05-15 13:41:26 +03:00
|
|
|
Much like we have specifications for the [syntax](../syntax/README.md) and the
|
|
|
|
[type system](../types/README.md) in Enso, we also need a specification of the
|
2020-07-21 15:59:40 +03:00
|
|
|
language semantics. These documents specify the executable semantics of the Enso
|
|
|
|
language.
|
2020-05-15 13:41:26 +03:00
|
|
|
|
|
|
|
> 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:**](./bindings.md) The semantics of Enso's binding expressions.
|
|
|
|
- [**Diagnostics:**](./diagnostics.md) The semantics of Enso's executable
|
|
|
|
compiler diagnostics.
|
|
|
|
- [**Dispatch:**](./dispatch.md) The semantics of Enso's dispatch system.
|
|
|
|
- [**Errors:**](./errors.md) The semantics of Enso's various error systems.
|
2020-07-21 15:59:40 +03:00
|
|
|
- [**Evaluation:**](./evaluation.md) Enso's evaluation semantics, including
|
2020-05-15 13:41:26 +03:00
|
|
|
those of suspended computations.
|
|
|
|
- [**Modules:**](./modules.md) The semantics of Enso's modules.
|
|
|
|
- [**Scoping:**](./scoping.md) Enso's scoping and identifier resolution rules.
|