Louis Gesbert
26c75af2ae
Allow declaration of toplevel values without definition
2023-06-15 17:57:01 +02:00
Louis Gesbert
e224e87f71
Wip support for modules
...
(first working dynload test with compilation done by manual calls to ocaml)
A few pieces of the puzzle:
* Loading of interfaces only from Catala files
* Registration of toplevel values in modules compiled to OCaml, to allow access
using dynlink
* Shady conversion from OCaml runtime values to/from Catala expressions, to
allow interop (ffi) of compiled modules and the interpreter
2023-06-15 17:56:57 +02:00
Denis Merigoux
6962761774
Merge branch 'master' into closure_conversion
2023-06-15 17:56:41 +02:00
Louis Gesbert
2f2614c508
Use the AST mapper for scopelang-> dcalc
2023-06-15 17:55:52 +02:00
Louis Gesbert
2b7beeefb2
Rename 'IdentName' to 'Ident'
2023-06-15 17:55:49 +02:00
Denis Merigoux
3d3e735402
Nicer error message
2023-06-15 17:47:58 +02:00
Denis Merigoux
ed2891c761
Closure conversion should work now
2023-06-15 17:32:00 +02:00
Denis Merigoux
d850ac688a
Added operators for closure environment handling
2023-06-15 16:52:36 +02:00
Denis Merigoux
57abfbf2c7
Other pattern matching
2023-06-15 16:33:14 +02:00
Denis Merigoux
c4675e18a7
Messages renamed to Message (lighter syntax) ( #476 )
2023-06-15 11:39:23 +02:00
Denis Merigoux
a3087ee163
Adding typing for closure env
2023-06-15 11:11:56 +02:00
Denis Merigoux
385e19b9e1
Formatting
2023-06-15 10:51:31 +02:00
Denis Merigoux
571c7c5d89
Correctly count number of var occurences
2023-06-14 11:39:27 +02:00
Denis Merigoux
42aaa1017d
Created minimal not working example and tame down beta-reduction
2023-06-14 11:18:39 +02:00
Denis Merigoux
2c9b56fb70
More agressive re-typing
2023-06-13 20:37:23 +02:00
Denis Merigoux
27bbe78438
Understanding a limitation
2023-06-13 20:10:42 +02:00
Aminata-Dev
10d147a8b1
Messages renamed to Message (lighter syntax)
2023-06-13 11:50:56 +02:00
Denis Merigoux
7072369b2d
Starting to work
2023-06-13 11:43:13 +02:00
Denis Merigoux
926c9436e3
Fix some bugs
2023-06-13 11:15:32 +02:00
Denis Merigoux
0e99d1598b
Continue closure conversion
2023-06-13 10:49:46 +02:00
Denis Merigoux
30eb3c0bdb
Better printing for types in typing error message
2023-06-13 09:55:48 +02:00
Denis Merigoux
84350b1593
Better typing error message
2023-06-13 09:07:42 +02:00
Denis Merigoux
26d53cc87f
Rainbow parenthesis for types
2023-06-13 08:59:33 +02:00
Aminata-Dev
5f9cb55e34
s
2023-06-12 17:00:10 +02:00
Denis Merigoux
45375dd7b5
Fix a bug in closure conversion
2023-06-12 15:21:06 +02:00
Denis Merigoux
cdae3e43ac
Improve names of temp variable in monadic pass
2023-06-12 15:02:08 +02:00
Denis Merigoux
603bd99c1d
Fix extra dot
2023-06-12 14:30:49 +02:00
Louis Gesbert
b975e7c149
Cleanup commented code
2023-06-09 15:28:12 +02:00
Louis Gesbert
9577d57a9b
Switch from ANSITerminal to ocolor ( #474 )
2023-06-09 14:06:22 +02:00
Louis Gesbert
e4c1216848
Tweak whitespace in messages
2023-06-08 14:36:28 +02:00
Louis Gesbert
fcadd9808e
Update tests with whitespace changes
2023-06-08 14:03:08 +02:00
Louis Gesbert
11730ce271
Repair indentation of log messages
2023-06-08 13:34:54 +02:00
Louis Gesbert
c564e70636
Correctly setup ocolor on all output channels
...
(and some cleanup of the remaining deps to ANSITerminal)
2023-06-08 12:14:11 +02:00
Louis Gesbert
16c93fbb0c
Reformat
2023-06-08 12:14:11 +02:00
Louis Gesbert
deaf40761e
Use ocolor instead of ANSITerminal
2023-06-08 12:11:55 +02:00
Louis Gesbert
7aa7bfb8fa
Fix most doc errors ( #471 )
2023-06-05 10:51:59 +02:00
Louis Gesbert
e8cab5e505
Improve unused scope variable detection ( #472 )
2023-06-05 10:50:50 +02:00
Denis Merigoux
6b7e927294
Update assets
2023-06-03 18:09:32 +02:00
Denis Merigoux
d1a836c646
Removing less precise message
2023-06-03 18:04:41 +02:00
Denis Merigoux
09bcefbcc1
Update tests
2023-06-03 18:02:57 +02:00
Denis Merigoux
91ee1122f6
Last typo
2023-06-03 15:32:38 +02:00
Denis Merigoux
79801292e9
Fix most doc errors
2023-06-02 17:17:45 +02:00
Denis Merigoux
ddee094783
Fix CI
2023-06-02 15:41:27 +02:00
Louis Gesbert
17414808ce
Improve compiler messages dev interface ( #470 )
2023-06-02 11:45:10 +02:00
Denis Merigoux
5d765676b5
Format rather than print
2023-06-02 10:58:03 +02:00
Denis Merigoux
579e66a500
Restore testing (formatting is better!)
2023-06-02 10:50:33 +02:00
Denis Merigoux
d1210cc0e4
The thing compiles
2023-06-02 10:50:33 +02:00
Denis Merigoux
4e6efe08da
All renamings done, on with actual refactor
2023-06-02 10:50:33 +02:00
Denis Merigoux
5f227933f3
Errors are now things to refactor [skip ci]
2023-06-02 10:50:33 +02:00
Denis Merigoux
0faa97b8fc
Abstract messages interface
2023-06-02 10:50:29 +02:00