elaboration
Installation
SKILL.md
You can use reussir-elab to track the type checking process of Reussir source
code.
The command has two modes:
--mode semi: Semi-elaborate the source code and print the elaborated AST. In the Semi IR, local expression types are inferred and checked but generic subsitutions are not attempted. Instead, only generic solutions are printed, which can be used for further instantiations.--mode full: Fully elaborate the source code and print the elaborated AST. In the Full IR, all types are checked and all generic subsitutions are attempted. Different from the Semi IR, the Full IR additionally insert modality for memory management. So, for Rc-managed objects, the values are now wrapped in Rc. Moreover, functions and records are now mangled without generic parameters.
For example, cabal run reussir-elab -- --mode semi tests/integration/frontend/region.rr will generate the following output: