- Mar 04, 2015
-
-
Kim Nguyễn authored
Add a workaround in case pattern compilation failed (after typechecking) due to the presence of type variables in some types.
-
- Mar 03, 2015
-
-
Kim Nguyễn authored
Fix a stupid typo which made the constraint solver prefer monomorphic variables over polymorphic ones. This prevented one from applying a polymorphic function in the body of another function.
-
- Feb 28, 2015
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
Kim Nguyễn authored
Make it so that the substitution function preserves as much sharing as possible from the original type.
-
- Feb 26, 2015
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
-
- Feb 21, 2015
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
This reverts commit a8ba6ab6. This commit introduces a regression where suprious type variables are introduced in the final type.
-
- Feb 20, 2015
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
Seal the representation of SortedList.Make(X).t (by making the type private). Expose Var.Set as a SortedList.S
-
- Feb 19, 2015
-
-
Kim Nguyễn authored
Perform a more aggressive memoization of substituted types and register the name if the original type was named. Make the pretty-printer re-entrant.
-
Kim Nguyễn authored
-
- Feb 15, 2015
-
-
Kim Nguyễn authored
containing variables but no toplevel variables would not be printed as regular expressions but nested pairs.
-
- Feb 10, 2015
-
-
Kim Nguyễn authored
sequence type would not show up (e.g. 'a & [ Any *] would be displayed as [ Any * ], while the 'a would still be present internally).
-
Kim Nguyễn authored
-
- Dec 14, 2014
-
-
Kim Nguyễn authored
-
- Dec 06, 2014
-
-
Kim Nguyễn authored
-
Kim Nguyễn authored
Positive.solve(Positive.decompose t) was not the identity but added spurious types at toplevel. Added more test cases in poly-ok.cd to cover such regressions
-
- Dec 01, 2014
-
-
Kim Nguyễn authored
type has already been normalized. Without this patch, in the following usage: norm(T1, delta) norm(<a>[ T1 ], delta) the fact that T1 has already been normalized against some delta is not taken into account while normalizin <a>[T1].
-
Kim Nguyễn authored
table instead of a 'recursion set' like in the paper. The hash table is tricky: - its keys should be both the type we are normalizing and delta - we should store a flag together with the constraint set, indicating whether the computation of the normalization for the corresponding type has finished. If it has, we can use the associated constraint set instead of CS.sat and stop recursion. If it has not, we can return CS.sat (like the previous base case). We also update the test case files to check that everything is in order: - part2.cd has been rewritten to make use of the new syntax and remove the red-black trees examples that are now in a separate file - red-black.cd is a fully typechecking file - rb-fail.cd has the type definition and the wrong balance function.
-
- Oct 16, 2014
-
-
Pietro Abate authored
-
Kim Nguyễn authored
Fix variable ordering problem by adding a 'kind' field inside variables so that variables of the function type are processed before arguments types and after Gamma.
-
- Oct 03, 2014
-
-
Pietro Abate authored
This reverts commit c9ad3e5c. Conflicts: types/var.ml typing/typer.ml
-
- Sep 19, 2014
-
-
Pietro Abate authored
All problems related to the introduction of the new syntax for constructed types
-
- Sep 16, 2014
-
-
Pietro Abate authored
Add a global variable table, so when we call "Var.mk id" twice, the same variable is returned and when we call "Var.fresh v" we always return a truly globally fresh variable.
-
- Sep 10, 2014
-
-
Pietro Abate authored
-
- Sep 08, 2014
-
-
Pietro Abate authored
-
Pietro Abate authored
- type t 'a = ('a,'a) - type t ('a,'b) = ('a,'b) Fix Typer.pp_env printer for types Minor code refactring
-
Kim Nguyễn authored
Conflicts: Makefile.distrib depend Change $$ in >> in types.ml for the substitution operator
-
- Aug 28, 2014
-
-
Kim Nguyễn authored
Do not generate equations for monomorphic variables, during the generation of type equation from constraints.
-
Pietro Abate authored
- Var identifiers are now of type U.t instead of string - Remove TVar from ast. Polymorphic variables are just types
-
- Aug 26, 2014
-
-
Pietro Abate authored
-
Pietro Abate authored
- New fresh variables now share the same str, but different freshness index - Remove the function is_internal from var module
-
- Aug 25, 2014
-
-
Pietro Abate authored
-
- Aug 21, 2014
-
-
Kim Nguyễn authored
-
Pietro Abate authored
Now gamma is correctly propagated in the compilation Enviroment and substitions are correctly applied to abstractions
-
Pietro Abate authored
-
- Aug 20, 2014
-
-
Pietro Abate authored
-
- Aug 19, 2014
-
-
Pietro Abate authored
-