catala/compiler/scopelang
Louis Gesbert 9ef8625df7 Compiler: support cumulative exceptions
Closes #208 (implementing Solution 1, without adding an explicit syntax)

Two exceptions or more, e.g. `(j1 |- c1)` and `(j2 |- c2)` such that `c1
= c2`, are collapsed by this transformation into `((j1 |- c1) | j2 |-
c2)`, introducing an arbitrary precedence that avoids the conflict.

The transormation is not applied if any exceptions apply to the subterms
themselves: while these exceptions could be merged, that would turn more
conflicts into arbitrary outcomes than wanted.
2022-05-30 14:22:34 +02:00
..
ast.ml Compiler: simplify EDefault term at construction 2022-05-25 18:36:07 +02:00
ast.mli Compiler: support cumulative exceptions 2022-05-30 14:22:34 +02:00
dependency.ml Formatting: some other personal preferences 2022-05-11 16:25:49 +02:00
dependency.mli Big reformatting 2022-03-08 15:03:14 +01:00
dune Big renaming and dir reorg 2021-06-21 11:39:06 +02:00
print.ml Formatting: some other personal preferences 2022-05-11 16:25:49 +02:00
print.mli Only print logging in Scopelang if debug 2022-03-16 12:00:36 +01:00
scope_to_dcalc.ml Compiler: support cumulative exceptions 2022-05-30 14:22:34 +02:00
scope_to_dcalc.mli Big reformatting 2022-03-08 15:03:14 +01:00
scopelang.mld Documentation pass 2022-01-19 10:54:16 +01:00