Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove now unnecessary VoVF enum | Nadrieril | 2019-08-25 | 1 | -22/+24 |
| | |||||
* | Rework apply_builtin to enforce preservation of type information | Nadrieril | 2019-08-25 | 1 | -183/+156 |
| | |||||
* | Enforce type information almost everywhere | Nadrieril | 2019-08-25 | 1 | -16/+9 |
| | |||||
* | Check consistency of type information | Nadrieril | 2019-08-25 | 1 | -2/+2 |
| | |||||
* | Keep type information through normalization | Nadrieril | 2019-08-25 | 1 | -69/+131 |
| | |||||
* | Clarify which syntax elements are completely handled in the tck phase | Nadrieril | 2019-08-23 | 1 | -22/+18 |
| | |||||
* | Keep type information after RecursiveRecordTypeMerge | Nadrieril | 2019-08-23 | 1 | -62/+13 |
| | |||||
* | Use Ret in apply_builtin | Nadrieril | 2019-08-20 | 1 | -90/+101 |
| | |||||
* | Propagate type information in Value::app() | Nadrieril | 2019-08-20 | 1 | -19/+16 |
| | |||||
* | Track evaluation status alongside ValueF in VoVF | Nadrieril | 2019-08-20 | 1 | -32/+40 |
| | |||||
* | Introduce a new enum to store either a Value or a ValueF | Nadrieril | 2019-08-20 | 1 | -60/+81 |
| | |||||
* | Naming tweaks | Nadrieril | 2019-08-20 | 1 | -29/+23 |
| | |||||
* | Add Value::from_builtin | Nadrieril | 2019-08-20 | 1 | -25/+19 |
| | |||||
* | Cleanup | Nadrieril | 2019-08-20 | 1 | -32/+55 |
| | |||||
* | Reuse work to avoid complicated recursion in record merging | Nadrieril | 2019-08-20 | 1 | -54/+0 |
| | |||||
* | Merge TypedValue and Value | Nadrieril | 2019-08-19 | 1 | -62/+28 |
| | |||||
* | Reduce untyped construction of Values | Nadrieril | 2019-08-19 | 1 | -26/+46 |
| | |||||
* | Use TypedValue instead of Typed in normalize and typecheck | Nadrieril | 2019-08-19 | 1 | -3/+3 |
| | | | | | Now Typed is only used in dhall::phase, similarly to Parsed/Resolved/Normalized | ||||
* | s/to_valuef/to_whnf/ and avoid cloning ValueFs when possible | Nadrieril | 2019-08-19 | 1 | -48/+46 |
| | |||||
* | Rework ValueInternal and clarify invariants around ValueF | Nadrieril | 2019-08-18 | 1 | -8/+21 |
| | |||||
* | s/Thunk/Value/ | Nadrieril | 2019-08-17 | 1 | -103/+105 |
| | |||||
* | s/Value/ValueF/ | Nadrieril | 2019-08-16 | 1 | -124/+126 |
| | |||||
* | Try to minimize untyped TypedThunks | Nadrieril | 2019-08-16 | 1 | -23/+31 |
| | |||||
* | Remove dead code | Nadrieril | 2019-08-16 | 1 | -21/+1 |
| | |||||
* | Reduce api surface of dhall crate | Nadrieril | 2019-08-16 | 1 | -7/+7 |
| | | | | Helps detect unused code | ||||
* | Disable some unused unstable features | Nadrieril | 2019-08-15 | 1 | -1/+1 |
| | |||||
* | Remove special closures from Value | Nadrieril | 2019-08-15 | 1 | -42/+55 |
| | | | | Instead construct their values directly | ||||
* | Store Imports in their own node instead of in Embed | Nadrieril | 2019-08-13 | 1 | -0/+3 |
| | |||||
* | Considerably simplify Embed handling | Nadrieril | 2019-08-13 | 1 | -1/+0 |
| | |||||
* | Stop tracking the absence of Embed values at the type level | Nadrieril | 2019-08-13 | 1 | -10/+11 |
| | |||||
* | s/TypeThunk/TypedThunk/g | Nadrieril | 2019-08-13 | 1 | -17/+17 |
| | |||||
* | Update dhall-lang submodule | Nadrieril | 2019-08-08 | 1 | -0/+1 |
| | |||||
* | Add support for dependent types | Nadrieril | 2019-08-08 | 1 | -3/+9 |
| | |||||
* | Add truncated Natural subtraction | Nadrieril | 2019-08-07 | 1 | -0/+10 |
| | |||||
* | Remove union literals from the language | Nadrieril | 2019-08-07 | 1 | -7/+0 |
| | |||||
* | Prepare for https://github.com/dhall-lang/dhall-lang/pull/630 | Nadrieril | 2019-08-06 | 1 | -5/+17 |
| | |||||
* | rustfmt | Nadrieril | 2019-08-06 | 1 | -1/+2 |
| | |||||
* | Add some tests | Nadrieril | 2019-08-06 | 1 | -0/+10 |
| | |||||
* | Remove old-style optional literals | Nadrieril | 2019-08-06 | 1 | -7/+3 |
| | |||||
* | rustfmt | Nadrieril | 2019-08-03 | 1 | -1/+3 |
| | |||||
* | Merge remote-tracking branch 'origin/master' into fintan/typecheck-combine-types | FintanH | 2019-08-03 | 1 | -0/+54 |
|\ | |||||
| * | Merge remote-tracking branch 'origin/master' into fintan/typecheck-combine | FintanH | 2019-08-03 | 1 | -9/+10 |
| |\ | |||||
| * | | Add the typechecking of RecursiveRecordMerge. | FintanH | 2019-08-01 | 1 | -0/+53 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces an external function for HashMaps to perform an outer join so that you can do a unionWith but with more power by having a new tagert type. Using outer_join and recursively looking through records of records we have an implementation for combining records. | ||||
* | | | Merge remote-tracking branch 'origin/master' into fintan/typecheck-combine-types | FintanH | 2019-08-03 | 1 | -1/+1 |
|\ \ \ | | |/ | |/| | |||||
| * | | Reuse the merge_maps function to implement the right-biased union | FintanH | 2019-07-31 | 1 | -1/+1 |
| |/ | |||||
* / | Add typechecking for RecursiveRecordTypeMerge. | FintanH | 2019-08-01 | 1 | -0/+32 |
|/ | | | | | | | | | | The implementation brings with it intersection_with_key over HashMaps to help with the type checking of records of records. The implementation first checks that the Const values line up with the LHS and RHS. Then checks that combining the records does not result in a FieldCollision. It will finally return the shared Const type of the arguments. | ||||
* | clippy | Nadrieril | 2019-05-12 | 1 | -97/+102 |
| | |||||
* | Make visibilities more consistent | Nadrieril | 2019-05-09 | 1 | -10/+7 |
| | |||||
* | ExprF need not be generic in Label | Nadrieril | 2019-05-09 | 1 | -5/+4 |
| | |||||
* | Detect duplicate record fields in typecheck | Nadrieril | 2019-05-09 | 1 | -9/+9 |
| |