Skip to content

Add a phase/resugaring to handle the monadic encoding #1620

@clementblaudeau

Description

@clementblaudeau

This is mostly designed for the Lean backend but could also apply to other. We need to insert nodes (resugaring?) to indicate that a sub-expression needs to be done inside the Result monad (inserting pure). Conversely, we need to insert nodes to "lift out of the monad", using <- in Lean.
Right now, both nodes are inserted during printing in a non-principled manner.

Metadata

Metadata

Labels

backendIssue in one of the backends (i.e. F*, Coq, EC...)leanRelated to the Lean backend or libraryneeds-designWe need to write a proper design for this issue.needs-discussionIssue that requires a discussion to make their status clearproof-libIssues related the backend-specific definitions (in the proof-lib folder)

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions