-
Notifications
You must be signed in to change notification settings - Fork 37
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[compiler+determinacy] no modes in AST + new check determinacy + uniq…
…ue_type_id - AST has no modes - in the old representation the predicate `type p int -> prop.` did not produce a mode for p. - therefore, Structured.program has no more a modes field - we delegate the computation of modes to Scoped_Quotation_Macro.run - flatten_arrows - objects with type `TArr (l, r)` where `r` has Prop as rightmost type, is transformed into `TPred (...)` by flatten_arrows. - the result of this call to flatten_arrows is used next to build modes and determinacy relations of predicates - IdPos.t - IdPos is a new module representing unique identifiers for elpi objects. - using integers is not possible due to the potential fusion of different units - therefore we use the position of a parsed terms as its id - unique ids are used by the typechecker which sets a unique id to the type of global constants - type of bound variables - the type of bound variables is attached to the lam node by the typechecker - determinacy checker - input arguments functionality setting - body premise inference and check
- Loading branch information
Showing
47 changed files
with
839 additions
and
397 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.