Commit Graph

26 Commits

Author SHA1 Message Date
Louis Gesbert
081605d04d tests: check the generated C code
(and update for new errors)
2024-05-30 16:19:55 +02:00
Louis Gesbert
584ba7dfbc Some fixes to 'make alltest' 2024-02-14 14:57:40 +01:00
Louis Gesbert
b04ee2afd1 Makefile: add convenience rule to simulate CI tests
Run `make alltest` to include catala examples and french-law stuff!
2024-02-12 14:23:49 +01:00
Louis Gesbert
d57eb023dd Skip compiling to js for running the tests
(making iterations quite a bit faster)
2024-02-05 16:28:56 +01:00
Louis Gesbert
13bc62a561 Build: make partial pattern-matchings always fatal
and fix the `make` clean rule
2024-01-26 11:22:12 +01:00
Louis Gesbert
7f6f89c4c4 Build the html manpages as part of the doc target 2024-01-19 16:12:29 +01:00
Louis Gesbert
d9a17db4c0 Fix running inline tests
Warning: one of them is broken and was disabled
2024-01-18 16:14:27 +01:00
Louis Gesbert
acdaf7c57d Remove french_law, examples, merge clerk into catala package 2024-01-16 11:54:23 +01:00
Louis Gesbert
3649f92975 Rework resolution of module elements
This changes the `decl_ctx` to be toplevel only, with flattened references to
uids for most elements. The module hierarchy, which is still useful in a few
places, is kept separately.

Module names are also changed to UIDs early on, and support for module aliases
has been added (needs testing).

This resolves some issues with lookup, and should be much more robust, as well
as more convenient for most lookups.

The `decl_ctx` was also extended for string ident lookups, which avoids having
to keep the desugared resolution structure available throughout the compilation
chain.
2023-11-30 21:14:12 +01:00
Denis Merigoux
efd175a390 Remove from scripts 2023-09-13 16:16:48 +02:00
Louis Gesbert
c393dfb75e CI improvements attempt
- fix dune compilation options: ensure both no dev failure on warnings and CI
  failure on warnings (the defaults do neither of those things !)

- attempt to publish the build artifacts to github-pages, so that they could be
  made more easily available and we could maybe remove the ones that are still
  there from the main repo
2023-02-28 17:55:34 +01:00
Denis Merigoux
76d5e44685
More man pages 2023-01-04 17:34:09 +01:00
Denis Merigoux
0133ad4843
Tests belong to clerk 2022-08-09 12:05:50 +02:00
Louis Gesbert
c964495c59 Generate website assets through dune 2022-08-03 19:04:13 +02:00
Louis Gesbert
0600501ec6 Generate french_law artifacts through dune
The files where manually generated through Makefile rules, and
versionned (with an outdated version).

The issue was that we had:
- `dune` building Catala
- Makefiles calling `catala` to build and copy the `french_law/ocaml/law_source`
  files
- then `dune` again to build `french_law`

The result was that `dune build` (without running `make` first) would
return a weird error.

The proposed solution adds ad-hoc dune rules to call the catala
binary, so that it can handle the whole pipeline correctly. If OCaml
is purely a backend, though, a simpler solution that makes us less
dependent on dune would be to handle the compilation of `french_law`
manually.

The dune rules are set to 'promote' the files so that it preserves the
fact that they are versionned (but with no confusion of the build system
about where they should come from anymore)
2022-08-03 18:55:42 +02:00
Emile Rolley
c09b457988 refactor(runtimes): add move the OCaml runtime into runtimes/ocaml 2022-07-22 16:52:56 +02:00
lIlIlIlIIIIlIIIllIIlIllIIllIII
6fb8b06e07
revert dependency between clerk and catala 2022-06-07 08:54:03 +02:00
lIlIlIlIIIIlIIIllIIlIllIIllIII
d4acc8eb33
Change dune rule to build tests only for catala 2022-06-06 22:53:50 +02:00
Louis Gesbert
30297b27b8 Add dune rule to build tests
This allows a new magic command: `dune test -w`
2022-05-25 18:33:20 +02:00
Louis Gesbert
5ae4393004 Add two demo backend plugins
- one that is just the same as the python backend
- one that is a quick'n'dirty call to js_of_ocaml on top of the ocaml backend to
  generate js files

Use `make plugins` to test them. They are only expected to be useful as
demonstrations of how to write plugins.
2022-05-19 10:40:04 +02:00
Louis Gesbert
50c1e7282c Add a (very simple) syntax highlighting mode for Emacs
Also fixes a typo in the .iro specifications
2022-05-13 17:42:03 +02:00
Denis Merigoux
2b6e7c8b98
Working prototype of clerk, the new build system for Catala 2022-01-10 17:57:58 +01:00
Denis Merigoux
bbd50747d9
Big renaming and dir reorg 2021-06-21 11:39:06 +02:00
Denis Merigoux
5c64b330e8 Only look into src directory 2020-05-22 19:58:01 +02:00
Denis Merigoux
095f0a8de1 Code reorg 2019-09-04 10:32:33 +02:00
Denis Merigoux
82dcdbcfbc The backend name should be verifisc, since specifisc will be the name of the high-level language 2019-08-14 18:50:41 -07:00