26 Commits
Author SHA1 Message Date
Mysaa 62f0389c94 Implementend Generator, does not work 2024-03-15 02:29:39 +01:00
Mysaa 024513767f Implemnted (most) of MSeq monad 2024-03-14 20:48:52 +01:00
Mysaa 8d3f175a82 Added solver for Functor actions 2024-03-14 14:16:53 +01:00
Mysaa 88994419e3 Added a test and fixed two inference bugs 2024-03-14 13:54:36 +01:00
Mysaa 8f45228e1d The solver works ... well at least it compiles 2024-03-14 13:27:12 +01:00
Mysaa 35d0bd817e Implemented solver for easy cases 2024-03-11 20:15:09 +01:00
Mysaa 5ed12f0cdf Added all type inference 2024-03-11 17:52:04 +01:00
Mysaa 5caeca79ff Added annotation, but not working 2024-03-10 20:51:14 +01:00
Mysaa 1fc5a46904 Tried to implement Var and Abs has_type method ... 2024-02-15 05:46:29 +01:00
Mysaa f600a1b212 Backed up the original run.t file for comparison. Did the first dune promote (nothing works) 2024-02-15 01:41:21 +01:00
Gabriel Scherer fd0213fe82 fix a ConstraintSimplifier bug
Reported-by: Mathis Bouverot-Dupuis
2024-02-14 15:57:36 +01:00
Gabriel Scherer 1f2bf2bb13 MSeq and MRand documentation: give an example.
Suggested-by: Dai Weituo
2024-02-08 16:17:07 +01:00
Gabriel Scherer 44d184b6d4 Infer.has_type: include a full example of a constraint that works for (lambda x. x)
Suggested-by: Dai Weituo
2024-02-08 15:49:45 +01:00
Gabriel Scherer c0ad56a745 move Decode from support/ to src/ for more visibility
Suggested-by: Neven Villani <neven.villani@crans.org>
2024-01-23 23:33:23 +01:00
Gabriel Scherer e76e32347f Merge branch 'main' into 'main'
Non-lazy `MonadPlus.delay` leads to stack overflow

See merge request gasche/mpri-2.4-project-2023-2024!1
2024-01-16 14:35:35 +00:00
Neven Villani 56b91df9d5 Make MSeq.delay and MRand.delay lazy
This avoids `Stack_overflow`s that otherwise occur when the behavior
is only partially implemented.
2024-01-15 20:13:52 +01:00
Gabriel Scherer bb1ec74794 README: tip of GADTs in OCaml 2024-01-07 23:06:16 +01:00
Gabriel Scherer 88ce70e6ee give more hints in Generator.ml 2024-01-07 23:01:42 +01:00
Gabriel Scherer 97e3c01eaa clarify(?) the documentation of ['a on_sol] 2024-01-07 22:37:37 +01:00
Gabriel Scherer 3cf46e36c2 minigen: ensure that it is possible to run with only MSeq implemented
Reported-by: Neven Villani <neven.villani@crans.org>
2024-01-07 22:30:07 +01:00
Gabriel Scherer 1b02ba850c Infer: explicitly restrict tuples to pairs 2023-12-23 01:22:47 +01:00
Gabriel Scherer 1852d50231 parser: use braces around tuples, not parentheses
This is the syntax we use in the printer. It has the advantage of
making the printing (and parsing) of tuple types unambiguous, even for
tuples of type 0 or 1:
- `(int)` could be `int` or a 1-ary tuple
- `{int}` can only be a 1-ary tuple
2023-12-23 01:22:15 +01:00
Gabriel Scherer e848910039 testsuite: avoids 4-indented code blocks that pass for test output
Reported-By: Nicolás Ojeda Bär
2023-12-22 15:49:01 +01:00
Gabriel Scherer fce7844414 fix the OCaml bound in .opam: we use Seq.take which is 4.14
Reported-by: Ellenor Taghayor
2023-12-22 15:48:56 +01:00
Gabriel Scherer 96bd055026 first public release of the project 2023-12-21 00:40:52 +01:00
Gabriel Scherer 6c3e9720fc root 2023-12-21 00:39:18 +01:00