catala/french_law
Louis Gesbert 8960e5dbbc Add typing-based disambiguation pass after desugaring
Some typing errors are changed a little, because they get triggered during the
typing of the disambiguation pass, which does not specify the expected return
type (it's an expected invariant that it should not be needed for
disambiguation).

It would be possible to still specify these types during disambiguation just to
get the same errors, but since the newer ones don't appear to be clearly worse
at the moment, it has not been done.
2022-11-28 16:38:09 +01:00
..
catala_legifrance Tweak error message location printing 2022-11-28 16:38:09 +01:00
js Correct lines 2022-11-24 15:17:00 +01:00
ocaml Add typing-based disambiguation pass after desugaring 2022-11-28 16:38:09 +01:00
python Correct lines 2022-11-24 15:17:00 +01:00
README.md feat(runtime): clean parse_raw_events + add documentation 2022-06-16 11:39:37 +02:00

French Law Libraries

This folder presents a working example of how Catala could be distributed and deployed inside existing applications. Each sub-folder is specialized for a particular programming language, and features a ready-to-use library of all the French public algorithms coded up using Catala so far.

General principles

Let us say you want to deploy a Catala program inside an application written in programming language X. The Catala compiler will translate the source Catala program into X, yielding a new .x source code file. This .x file will export functions corresponding to the scopes of the original Catala program. You can then reuse those exported functions in your application written in X.

OCaml

To see how to deploy Catala programs as an OCaml library, see the dedicated readme.

JS

To see how to deploy Catala programs as a JS library, see the dedicated readme.

Python

To see how to deploy Catala programs as a Python library, see the dedicated readme.