catala/build_system
Louis Gesbert 583e80993a Remove the with-exceptions backend
*Disclaimer*: This is intended for discussion

My impression is that the with-exceptions backend is to be superseded by the
without-exception backend, which is more general and more efficient. Therefore,
seeing the added complexity of maintaining the two in parallel, I see no good
reason to keep the with-exceptions version now that the equivalence of their
semantics have been proved.

It will also be nice to reduce divergences between the different backends ; and
this should make further simplifications possible (e.g. some thunkings may no
longer be needed)

Of course I am ready to hear arguments in favor of keeping it, be it in the mid-
or long-term.

This patch removes the `--avoid-exceptions` flag, making it the only option, and
the corresponding `with_exceptions` variant of the dcalc->lcalc translation. It
doesn't do further simplifications.
2024-07-04 15:08:13 +02:00
..
clerk_config.ml Clerk: add support for basic configuration files 2024-06-26 10:41:12 +02:00
clerk_config.mli Clerk: add support for basic configuration files 2024-06-26 10:41:12 +02:00
clerk_driver.ml Remove the with-exceptions backend 2024-07-04 15:08:13 +02:00
clerk_driver.mli Reformat 2023-09-27 13:19:04 +02:00
clerk_report.ml Clerk report: add JUnit-compatible XML output 2024-07-04 14:47:50 +02:00
clerk_report.mli Clerk report: add JUnit-compatible XML output 2024-07-04 14:47:50 +02:00
clerk_runtest.ml Allow catala ocaml --closure-conversion 2024-06-21 12:23:01 +02:00
clerk_runtest.mli Generate tests reports from 'clerk test' 2024-06-19 16:10:26 +02:00
clerk_scan.ml Generate tests reports from 'clerk test' 2024-06-19 16:10:26 +02:00
clerk_scan.mli Move global options of Cli to their own module 2024-03-19 15:18:35 +01:00
clerk.ml Big reformatting 2022-03-08 15:03:14 +01:00
dune Clerk: add support for basic configuration files 2024-06-26 10:41:12 +02:00
README.md docs(clerk): add documentation about clerk and the Ninja_utils module 2022-02-24 14:05:05 +01:00

Clerk

The build system for Catala built on top of ninja.

Usage

Use clerk --help if you have installed it to get more information about the command line options available. To get the development version of the help, run make help_clerk after make build. The clerk binary corresponds to the Catala build system, responsible for testing among other things.

Under the hood

To perform tests, Clerk will first generate a build.ninja file with required rules and build statements retrieved from the given input path(s), before executing the command ninja test.

The handling of the ninja structure is done with the module Ninja_utils.