Skip to content

Latest commit

 

History

History
46 lines (33 loc) · 1.2 KB

errors.md

File metadata and controls

46 lines (33 loc) · 1.2 KB
layout title category tags order
developer-doc
Errors
semantics
semantics
errors
runtime
4

Errors

Due to its hybrid nature, Enso supports two main exception systems that help users to deal with errors at runtime in the language.

Asynchronous Exceptions

[!WARNING] The actionables for this section are:

  • Why do we call it asynchronous, when they are synchronous!?
  • Specify the semantics of Enso's async exceptions.

Broken Values

There is a special dynamic dispatch for Error values. A dataflow error dispatch first checks if it may call a method on Error type.

[!WARNING] The actionables for this section are:

  • Specify the semantics of Enso's broken values.

Warnings

[!WARNING] TODO

  • Values in Enso may have warnings attached

There is a special dynamic dispatch for values with warnings. Before we pass the dispatch to the underlying value, we check if warning has a method 'overridden' - this is used for remove_warnings, etc.