- 26 Feb, 2022 3 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
Kim Nguyễn authored
empty.
-
- 15 Feb, 2022 1 commit
-
-
Kim Nguyễn authored
Primitive files now support the syntax : Prefix!Module.Other.name The value is then available in CDuce as : Prefix.Module.Other.name This allows one to namespace OCaml modules with generic names to prevent them to clash (e.g. linking two OCaml libraries each with a toplevel Node module can be done with Lib1!Node and Lib2!Node)
-
- 10 Feb, 2022 1 commit
-
-
Kim Nguyễn authored
-
- 09 Feb, 2022 2 commits
-
-
Kim Nguyễn authored
Exceptions raised from OCaml code called by the CDuce main evaluation function are correctly wrapped in a CDuceExn exception. This allows one to differentiate between an exception raised by an OCaml primitive during the evaluation of a CDuce expression (which should appear as a CDuce exception) from an OCaml exception raised by the CDuce runtime itself (which should be a fatal error). Update the output of expected tests raising exceptions.
-
Kim Nguyễn authored
Currently, this failure is raised with failwith, thus not catchable from the CDuce side and also interrupting the toplevel. We use Value.failwith' instead, making it possible to catch dynamic error from CDuce and resuming gracefully the toplevel. This is consistent with other dynamic matching errors such as : let (x, y) = (42 : Any) :? (Int, Int) ;; Uncaught CDuce exception: "Value 42 does not match type (Int,Int)\n" let (x, y) = (42 : Any) :? (Int, Int) ;;
-
- 01 Feb, 2022 1 commit
-
-
Kim Nguyễn authored
-
- 28 Jan, 2022 1 commit
-
-
Kim Nguyễn authored
In `debug subtype (t1 t2)` variable occuring both in `t1` and `t2` are the same, and not fresh variables with the same external name and distinct internal IDs.
-
- 03 Dec, 2021 3 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
Kim Nguyễn authored
Disable the refining of variables in pattern branches as it may create patterns that are too large to typecheck.
-
- 22 Nov, 2021 1 commit
-
-
Kim Nguyễn authored
-
- 16 Nov, 2021 2 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
until after the command line arguments have been parsed.
-
- 15 Nov, 2021 2 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
- 09 Nov, 2021 1 commit
-
-
Kim Nguyễn authored
one of these.
-
- 04 Nov, 2021 3 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
variables by 0/1.
-
Kim Nguyễn authored
-
- 12 Oct, 2021 2 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
- 10 Oct, 2021 1 commit
-
-
Kim Nguyễn authored
-
- 09 Oct, 2021 1 commit
-
-
Kim Nguyễn authored
scheme (to support e.g. "4.12.0+domains")
-
- 08 Oct, 2021 4 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
Kim Nguyễn authored
(See issue #2).
-
- 06 Oct, 2021 2 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
- 03 Oct, 2021 1 commit
-
-
Kim Nguyễn authored
-
- 01 Oct, 2021 2 commits
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
- 08 May, 2021 1 commit
-
-
Kim Nguyễn authored
-
- 05 May, 2021 1 commit
-
-
Kim Nguyễn authored
-
- 02 May, 2021 4 commits
-
-
Kim Nguyễn authored
They cannot be generalized. These are juste variables "waiting to be instantiated". When such an instantiation occurs, the typing environment is patched to substitute all occurrences of the variables with their instance. As with OCaml, one can observe weak polymorphic variables in the toplevel e.g. by creating mutable references or performing partial applications of polymorphic functions. When compiling a file, an error is raised when toplevel identifiers whose type contains polymorphic variables remain.
-
Kim Nguyễn authored
-
Kim Nguyễn authored
debug tallying ([] [ ('a, Int) ('a, Bool) ]) the two instances of 'a refer to the same variable internally.
-
Kim Nguyễn authored
in t are correctly recognized.
-