Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #129 from Nadrieril/missing-features | Nadrieril Feneanar | 2020-02-06 | 14 | -106/+361 |
|\ | | | | | Implement some missing features | ||||
| * | Implement some record simplifications | Nadrieril | 2020-02-06 | 2 | -13/+98 |
| | | |||||
| * | Normalize toMap | Nadrieril | 2020-02-05 | 4 | -19/+55 |
| | | |||||
| * | Typecheck record completion | Nadrieril | 2020-02-05 | 2 | -38/+51 |
| | | |||||
| * | Typecheck projection by type | Nadrieril | 2020-02-05 | 2 | -12/+25 |
| | | |||||
| * | Implement typechecking of toMap | Nadrieril | 2020-02-04 | 11 | -26/+134 |
|/ | |||||
* | Merge pull request #128 from Nadrieril/nice-errors-everywhere | Nadrieril Feneanar | 2020-02-04 | 85 | -183/+484 |
|\ | | | | | Add basic pretty type errors to all errors | ||||
| * | Workaround panic in a serde_dhall example | Nadrieril | 2020-02-04 | 1 | -2/+4 |
| | | | | | | | | | | Unsure what's causing it, most probably mixing of spans from different inputs | ||||
| * | Add basic pretty type errors to all errors | Nadrieril | 2020-02-04 | 84 | -181/+480 |
|/ | |||||
* | Add local test files on top of dhall-lang tests | Nadrieril | 2020-02-02 | 6 | -54/+68 |
| | |||||
* | 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 |
| | |