Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #127 from Nadrieril/nicer-type-errors | Nadrieril Feneanar | 2020-02-02 | 27 | -144/+539 |
|\ | | | | | Enable multiple locations for type errors | ||||
| * | Tweak errors | Nadrieril | 2020-02-02 | 9 | -65/+63 |
| | | |||||
| * | Use Spans consistently by value | Nadrieril | 2020-02-02 | 5 | -23/+19 |
| | | |||||
| * | Fix spans for unions and records | Nadrieril | 2020-02-02 | 4 | -21/+28 |
| | | |||||
| * | Let rustfmt format string literals | Nadrieril | 2020-02-02 | 2 | -43/+45 |
| | | |||||
| * | More errors | Nadrieril | 2020-02-02 | 12 | -35/+140 |
| | | |||||
| * | More nice errors plus some refactor | Nadrieril | 2020-02-02 | 15 | -174/+272 |
| | | |||||
| * | Implement once nice error using annotate_snippets | Nadrieril | 2020-02-01 | 11 | -27/+216 |
|/ | |||||
* | Rewrite normalization and typechecking with environments (#126) | Nadrieril Feneanar | 2020-01-31 | 109 | -3371/+3154 |
|\ | | | | | Rewrite normalization and typechecking with environments | ||||
| * | Fix module paths in serde_dhall | Nadrieril | 2020-01-31 | 2 | -2/+2 |
| | | |||||
| * | Factor out custom Lazy struct | Nadrieril | 2020-01-31 | 3 | -35/+83 |
| | | |||||
| * | Use Rc equality to shortcut Value equality | Nadrieril | 2020-01-30 | 1 | -2/+1 |
| | | |||||
| * | Tweak ConstantClosure | Nadrieril | 2020-01-30 | 2 | -25/+21 |
| | | |||||
| * | Eval Thunk by move | Nadrieril | 2020-01-30 | 1 | -4/+3 |
| | | |||||
| * | Get rid of all the manual Ref borrows | Nadrieril | 2020-01-30 | 2 | -149/+75 |
| | | |||||
| * | Use OnceCell to enable returning &ValKind | Nadrieril | 2020-01-30 | 4 | -71/+64 |
| | | |||||
| * | Replace Form with a pair of RefCells, in preparation for OnceCell | Nadrieril | 2020-01-30 | 1 | -88/+71 |
| | | |||||
| * | Move Form::PartialExpr into Thunk | Nadrieril | 2020-01-30 | 1 | -36/+46 |
| | | |||||
| * | Only the Form must be in a RefCell | Nadrieril | 2020-01-30 | 1 | -61/+67 |
| | | |||||
| * | Avoid unnecessary allocations of `Value`s | Nadrieril | 2020-01-30 | 5 | -25/+25 |
| | | |||||
| * | Clarify normalization to ensure we only nze once | Nadrieril | 2020-01-30 | 4 | -58/+55 |
| | | |||||
| * | Move Thunk value into ValueInternal | Nadrieril | 2020-01-30 | 2 | -35/+32 |
| | | |||||
| * | Prepare ValueInternal with new `Form`s | Nadrieril | 2020-01-30 | 1 | -53/+50 |
| | | |||||
| * | Factor out text literals in Value | Nadrieril | 2020-01-30 | 3 | -83/+110 |
| | | | | | | | | This allows encapsulating invariants properly and reducing clutter | ||||
| * | Remove type parameter from ValueKind | Nadrieril | 2020-01-30 | 4 | -35/+21 |
| | | |||||
| * | Remove Value visitor | Nadrieril | 2020-01-30 | 3 | -309/+87 |
| | | | | | | | | | | | | It's mostly useful when we can change types, but it's also too constraining if we can, because then we can't enforce complex invariants like the one for TextLit. | ||||
| * | Move parse and resolve up a level | Nadrieril | 2020-01-30 | 6 | -8/+7 |
| | | |||||
| * | Move parser files to syntax/ | Nadrieril | 2020-01-30 | 4 | -3/+3 |
| | | |||||
| * | Move main API to lib.rs | Nadrieril | 2020-01-30 | 13 | -254/+256 |
| | | |||||
| * | Move normalize under nze | Nadrieril | 2020-01-30 | 6 | -6/+5 |
| | | |||||
| * | Move Value-related stuff under semantics::nze | Nadrieril | 2020-01-30 | 8 | -12/+8 |
| | | |||||
| * | Introduce Thunks and normalize lazily | Nadrieril | 2020-01-30 | 7 | -45/+95 |
| | | |||||
| * | Remove NF marker; it was premature optimization | Nadrieril | 2020-01-30 | 1 | -22/+11 |
| | | |||||
| * | Increase encapsulation for Closures | Nadrieril | 2020-01-30 | 2 | -12/+32 |
| | | |||||
| * | Make unnormalized Values unobservable | Nadrieril | 2020-01-30 | 2 | -10/+3 |
| | | |||||
| * | s/as_whnf/kind/ | Nadrieril | 2020-01-30 | 4 | -55/+53 |
| | | |||||
| * | Tweak | Nadrieril | 2020-01-30 | 1 | -9/+4 |
| | | |||||
| * | Remove use of take_mut | Nadrieril | 2020-01-30 | 3 | -33/+22 |
| | | |||||
| * | Encapsulate partially applied builtin in a separate struct | Nadrieril | 2020-01-30 | 6 | -74/+120 |
| | | |||||
| * | Remove debug output in type errors | Nadrieril | 2020-01-30 | 4 | -97/+6 |
| | | |||||
| * | No need for the current env to tck Foo/build closures | Nadrieril | 2020-01-30 | 3 | -27/+3 |
| | | |||||
| * | Clean imports | Nadrieril | 2020-01-30 | 1 | -7/+8 |
| | | |||||
| * | Actually, no need for keeping extra args in apply_builtin | Nadrieril | 2020-01-30 | 1 | -25/+10 |
| | | |||||
| * | Remove old typecheck module | Nadrieril | 2020-01-30 | 3 | -21/+5 |
| | | |||||
| * | Move builtins-related code to its own module | Nadrieril | 2020-01-30 | 8 | -568/+553 |
| | | |||||
| * | Cleanup variable handling | Nadrieril | 2020-01-29 | 10 | -65/+39 |
| | | |||||
| * | Move envs to their own files | Nadrieril | 2020-01-29 | 11 | -241/+239 |
| | | |||||
| * | Finally get rid of all of the shift/subst_shift ! | Nadrieril | 2020-01-29 | 5 | -112/+3 |
| | | |||||
| * | s/QuoteEnv/VarEnv/ | Nadrieril | 2020-01-29 | 3 | -43/+40 |
| | | |||||
| * | Use NameEnv in tyexpr_to_expr | Nadrieril | 2020-01-29 | 2 | -35/+23 |
| | |