adelaett
6c0e04942f
corrected iota optimization
2023-03-06 16:00:41 +01:00
adelaett
78f121b44a
before any issues with mark on code_item
2023-03-03 11:39:55 +01:00
adelaett
73bd4b4064
finished to detect unpure subexpressions
2023-02-28 14:26:48 +01:00
adelaett
43b6595a09
Revert "not working fix for from_scopelang"
...
This reverts commit 1c837ec3b5
.
2023-02-28 09:32:25 +01:00
adelaett
1c837ec3b5
not working fix for from_scopelang
2023-02-28 09:32:10 +01:00
adelaett
178367efc0
adding invariant about App(EStructAccess)
2023-02-28 09:07:12 +01:00
adelaett
4cd3ec7cc3
Add an optimization pass to remove struct access of struct constructor
...
ie { e = x}.e -> x
2023-02-28 09:06:33 +01:00
adelaett
001a8205af
?
2023-02-28 08:39:30 +01:00
adelaett
631b6d77ff
Revert "Abandoning json conversion :("
...
This reverts commit 02780f5439
.
2023-02-28 08:37:50 +01:00
adelaett
02780f5439
Abandoning json conversion :(
2023-02-28 08:36:45 +01:00
adelaett
621b4bd974
add of an example with partial code duplication (non-exponential)
2023-02-28 08:36:45 +01:00
adelaett
5fe09238c5
better error management when building with make_app
2023-02-28 08:36:45 +01:00
adelaett
2ae2ff7d50
adding a non-passing invariant
2023-02-28 08:36:34 +01:00
adelaett
75dc978fa9
remove logs from the no_partial_evaluation invariant
...
removed error_on_empty when functions
2023-02-27 11:20:59 +01:00
adelaett
b5f3621302
serialization wip
2023-02-27 11:20:59 +01:00
adelaett
9ec2b7785d
more work on invariants
2023-02-27 11:20:59 +01:00
adelaett
98084f4f37
colordiff fixing
2023-02-27 11:20:59 +01:00
adelaett
382150b513
new invariant option when launching the compiler
2023-02-27 11:20:59 +01:00
adelaett
6c3f0af9e0
invariant assertion checking
2023-02-27 11:20:59 +01:00
adelaett
173859d10e
invariant checking (untested)
2023-02-27 11:20:59 +01:00
adelaett
9319e94617
fix typo
2023-02-27 11:20:59 +01:00
adelaett
9a68563488
assert_internal & skeleton for the static pass
2023-02-27 11:20:59 +01:00
adelaett
8784ae6175
unpure detection in expressions
2023-02-27 11:20:59 +01:00
adelaett
214bc55aae
internal error message
2023-02-27 11:20:59 +01:00
adelaett
0262019d45
make app
2023-02-27 11:20:59 +01:00
adelaett
363ef39704
let case
2023-02-27 11:20:59 +01:00
adelaett
2a222f0aab
changed nix dependency from ocamlformat 24.1 to 21.0
2023-02-27 11:20:59 +01:00
adelaett
e765ee8a0c
requesting to have a typed tree
2023-02-27 11:20:59 +01:00
adelaett
44ce5a636b
fix tentative for functions applications
2023-02-27 11:20:59 +01:00
adelaett
5b33b39636
new helpers functions in lcalc's ast
2023-02-27 11:20:59 +01:00
adelaett
b9e2c6cf98
Update lock files
2023-02-27 10:19:18 +00:00
Denis Merigoux
d9088d2b66
Fix flake update mechanism ( #408 )
2023-02-27 09:17:02 +01:00
Denis Merigoux
82141335c7
Tutorial: add top-level value definitions as an annex ( #406 )
2023-02-27 09:13:27 +01:00
Denis Merigoux
7801b57019
Update Makefile.common.mk ( #407 )
2023-02-27 09:10:45 +01:00
adelaett
7d50d89f7a
nix build now uses cache
2023-02-24 19:38:50 +01:00
armandsalek
ddb8361895
Merge branch 'CatalaLang:master' into master
2023-02-24 17:11:49 +01:00
adelaett
93aa6f0922
update CI to run catala's tests
2023-02-24 15:16:23 +01:00
adelaett
c729e6fbf7
update the update flake mecanism to check the tests
2023-02-24 15:09:43 +01:00
adelaett
be5de3f979
update clerk package description to do the checks (and test catala)
2023-02-24 15:06:50 +01:00
adelaett
c7c2343d8e
Fix nix update
...
move cppo and menhir from build dependencies to native build dependences
cleanup code
2023-02-24 15:06:14 +01:00
Louis Gesbert
49b4f8a8d8
Tutorial: add top-level value definitions as an annex
...
The cheat-sheet still needs to be updated, I'll do that once we have a unified
syntax for function types and multiple arguments at the top-level and within
scopes.
2023-02-23 11:35:44 +01:00
Louis Gesbert
5bd140ae5f
Arrow List ( #404 )
2023-02-22 14:06:55 +01:00
adelaett
4f029db47b
explicitly don't accept multiple arguments from surface to desugared
2023-02-22 12:21:55 +01:00
adelaett
9f31715a47
style
2023-02-22 12:11:42 +01:00
adelaett
8553b9dd7e
Alternative printing of type TArrow
...
Changed the typing printing in the pretty printer to:
* () -> unit for empty lists
* a -> b for single elements lists
* (a, b, c, d) -> b for multiple elements lists
2023-02-22 11:52:22 +01:00
adelaett
bd0243359e
changed the invariant documentation of scopelang -> dcalc
...
Since functions inside catala can now have multiple arguments (while
not yet being user-definable) the invariant is now about partial
evaluation not being possible.
2023-02-22 11:42:48 +01:00
adelaett
576f21f69c
Added documentation for encoding constructors in the typing inference
2023-02-22 11:41:21 +01:00
adelaett
51b5ccb08e
change operator definition style to something more readable
2023-02-22 11:40:22 +01:00
armandsalek
f841512619
Update Makefile.common.mk
...
Ajout de l’appel à la variable « CURR_DIR » dans la définition de la règle « %.run »
2023-02-21 22:48:18 +01:00
adelaett
a4466fecc7
fixed some mixup in Format.fprintf arguments
2023-02-21 16:19:17 +01:00