Emile Rolley
ba620fca28
ocamlformat: new break-infix rule
2022-08-05 10:55:48 +02:00
Denis Merigoux
fa55a83fb4
Merge branch 'master' into 290-jsoo-wrapper-plugin
2022-07-22 17:54:51 +02:00
Emile Rolley
0c180e12f9
refactor(runtimes): add runtime_ocaml and runtime_jsoo in the catala package
2022-07-22 16:52:56 +02:00
Denis Merigoux
dc00ce8957
Merge branch 'master' into aides_logement
2022-07-22 16:49:01 +02:00
Denis Merigoux
522deb50c2
Factorizing Dcalc.program
2022-07-22 15:49:57 +02:00
Denis Merigoux
0304602433
Trying to fix Bindlib unboxing bug [skip ci]
2022-07-22 12:31:05 +02:00
Denis Merigoux
dcf80f4bec
Adding first_day_of_month and last_day_of_month
2022-07-21 14:14:04 +02:00
Denis Merigoux
58cb48fb28
Merge remote-tracking branch 'origin/master' into aides_logement
2022-07-20 11:20:00 +02:00
Louis Gesbert
d9fbaa704b
Restore some commented out code, add some comments
2022-07-19 21:41:55 +02:00
Louis Gesbert
b9099ac7a4
Use resolved types in type annotations
...
Adding an 'inferring' annotation type only used during typing
2022-07-19 18:47:00 +02:00
Denis Merigoux
be373f0ff5
Added primitives money_to_decimal and decimal_to_money [skip ci]
2022-07-19 11:53:09 +02:00
Louis Gesbert
61063b5234
Small cleanup and clarifying a dark spot of the Ast interface
2022-07-13 12:28:08 +02:00
Louis Gesbert
83de1a229b
Mark the optimization passes as untyped
...
It's not expected to stay that way forever, but some additional effort will be required for them to preserve (or restore) types; until then, be safe and don't forward possibly incorrect information.
2022-07-13 12:17:43 +02:00
Louis Gesbert
7485c7f2ce
Reformat
2022-07-11 17:42:34 +02:00
Louis Gesbert
18e86621d5
Port verification code to the AST changes
2022-07-11 17:42:34 +02:00
Louis Gesbert
5f882e35a2
dcalc ast: make the map function more polymorphic
2022-07-11 17:42:34 +02:00
Louis Gesbert
296a1de7dd
Typing: add functions to type scopes without conversion to expr
2022-07-11 17:42:34 +02:00
Louis Gesbert
4eb5933ad0
Porting the interpreter to the marked AST
2022-07-11 17:42:30 +02:00
Louis Gesbert
6cc2e9a07b
typing.ml: fix use of bindlib
2022-07-11 16:51:54 +02:00
Louis Gesbert
67179a793c
Add type annotations on all AST nodes (first pass)
2022-07-11 16:51:54 +02:00
Louis Gesbert
513647cd32
AST simplification: remove redundant annotations
...
The AST structures track annotations (e.g., at the moment, source code
position information) in a lot of places. This patch tidies up a bit and
removes some duplication, ensuring a single level of annotation wrapping
at each AST recursion level.
This will be important when adding type information in these
annotations, because there will be consitency constraints to be ensured
and duplication is a likely source of mistakes.
2022-07-11 16:51:54 +02:00
Louis Gesbert
af0ac95682
Propagate renaming of Pos.mark*
into module Marked
...
this patch is just a bunch of `sed` commands
```shell
cd compiler
sed -i 's/Pos.marked/Marked.pos/g' *.ml* **/*.ml*
sed -i 's/Pos.unmark/Marked.unmark/g' *.ml* **/*.ml*
sed -i 's/Pos\.get_position/Marked.get_mark/g' *.ml* **/*.ml*
sed -i 's/Pos\.same_pos_as/Marked.same_mark_as/g' *.ml* **/*.ml*
sed -i 's/Pos\.map_under_mark/Marked.map_under_mark/g' *.ml* **/*.ml*
sed -i 's/Pos\.mark/Marked.mark/g' *.ml* **/*.ml*
sed -i 's/Pos\.compare_marked/Marked.compare/g' *.ml* **/*.ml*
```
2022-07-11 16:51:54 +02:00
Louis Gesbert
f17875f90e
Formatting: some other personal preferences
2022-05-11 16:25:49 +02:00
Louis Gesbert
74c5629153
Formatting: reduce extra match-case indentation
...
2 is plenty enough, esp. for nested matches :)
2022-05-11 16:25:20 +02:00
Louis Gesbert
ac85d8dbb4
Upgrade ocamlformat version
2022-05-11 16:21:58 +02:00
Denis Merigoux
c7b84ca2d0
Merge pull request #244 from CatalaLang/c_backend
...
Bringing structure to the Lcalc AST
2022-05-05 14:22:26 +02:00
Denis Merigoux
78e8275d5e
Adds a decimal rounding operator
2022-04-29 21:18:15 +02:00
Denis Merigoux
6ea73a4291
Progress on refactoring [skip ci]
2022-04-26 12:07:39 +02:00
Denis Merigoux
c1c2953131
Fixing more errors [skip ci]
2022-04-25 10:19:04 +02:00
Denis Merigoux
88a522d120
Changed maps and folds for Dcalc
2022-04-15 12:16:22 +02:00
Denis Merigoux
8be3d1cfc9
Made more functions generic in Dcalc.Ast
2022-04-12 17:54:00 +02:00
Denis Merigoux
e7440e043c
Remove duplicated function
2022-04-12 17:07:00 +02:00
Denis Merigoux
33ff03a356
Map visitor for Dcalc
2022-04-12 11:51:33 +02:00
Denis Merigoux
b24dbc8360
Remove logging calls for vc generation
2022-04-12 11:14:39 +02:00
Denis Merigoux
48dda14dcd
Merge branch 'master' into c_backend
2022-04-12 10:53:46 +02:00
Denis Merigoux
a43f89a0f4
Parametrize Dcalc.scope_expr
2022-04-12 10:53:07 +02:00
Denis Merigoux
6f223d2519
Restore web build
2022-04-11 10:59:40 +02:00
Denis Merigoux
f2d1fab263
Refactoring to clean some Dcalc passes
2022-04-06 09:48:34 +02:00
Denis Merigoux
f6047a43ea
Added boxed constructors for Dcalc
2022-04-06 09:35:07 +02:00
Denis Merigoux
f6c8e7fbd9
Crediting author of moved code
2022-04-04 18:06:40 +02:00
Denis Merigoux
9d05dad3fb
Passing all tests!
2022-04-04 15:56:45 +02:00
Denis Merigoux
84144c0a56
Tests now passing except for a few position and printing issues [skip ci]
2022-04-04 12:25:00 +02:00
Denis Merigoux
8f39b65bb6
Started replacement of Ast by Binded_representation in Dcalc [skip-ci]
2022-04-02 12:29:43 +02:00
Denis Merigoux
cdac6de9fe
Implement the round money builtin
2022-03-17 12:30:14 +01:00
Aymeric Fromherz
9eec6a474c
format
2022-03-08 20:43:55 +01:00
Aymeric Fromherz
9cbfc13288
Merge branch 'master' into afromher_dcalc
2022-03-08 20:41:35 +01:00
Aymeric Fromherz
3fb14264c2
Implement equal_ops in dcalc
2022-03-08 20:39:45 +01:00
Aymeric Fromherz
ac42bf65a7
Refactor to extract common equal_exprs_list and equal_typs_list
2022-03-08 20:31:22 +01:00
Aymeric Fromherz
5b345b4782
format
2022-03-08 20:23:45 +01:00
Aymeric Fromherz
89d69c2316
Implement equality function on dcalc expressions
2022-03-08 17:35:08 +01:00