catala/compiler/verification
Louis Gesbert 9d07015864 Unify runtime error handling
- Clearly distinguish Exceptions from Errors. The only catchable exception
  available in our AST is `EmptyError`, so the corresponding nodes are made less
  generic, and a node `FatalError` is added

- Runtime errors are defined as a specific type in the OCaml runtime, with a
  carrier exception and printing functions. These are used throughout, and
  consistently by the interpreter. They always carry a position, that can be
  converted to be printed with the fancy compiler location printer, or in a
  simpler way from the backends.

- All operators that might be subject to an error take a position as argument,
  in order to print an informative message without relying on backtraces from
  the backend
2024-04-26 18:31:26 +02:00
..
conditions.ml Unify runtime error handling 2024-04-26 18:31:26 +02:00
conditions.mli Rework and normalise the Marked interface 2023-05-17 17:37:00 +02:00
dune Rename utils to catala_utils 2022-11-28 16:38:09 +01:00
globals.ml Refacter the main Driver module 2023-07-03 16:42:54 +02:00
globals.mli Refacter the main Driver module 2023-07-03 16:42:54 +02:00
io.ml Rewriting message calls to use the new intf 2024-04-10 19:26:23 +02:00
io.mli Merge branch 'afromher_verif' into afromher_334 2022-11-16 22:16:11 +01:00
solver.ml Rewriting message calls to use the new intf 2024-04-10 19:26:23 +02:00
solver.mli Leverage the shared AST: big cleanup (part I) 2022-08-22 19:28:21 +02:00
verification.mld Documentation pass 2022-01-19 10:54:16 +01:00
z3backend.dummy.ml Rewriting message calls to use the new intf 2024-04-10 19:26:23 +02:00
z3backend.mli Big reformatting 2022-03-08 15:03:14 +01:00
z3backend.real.ml Unify runtime error handling 2024-04-26 18:31:26 +02:00