summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Factor out custom Lazy structNadrieril2020-01-313-35/+83
|
* Use Rc equality to shortcut Value equalityNadrieril2020-01-301-2/+1
|
* Tweak ConstantClosureNadrieril2020-01-302-25/+21
|
* Eval Thunk by moveNadrieril2020-01-301-4/+3
|
* Get rid of all the manual Ref borrowsNadrieril2020-01-302-149/+75
|
* Use OnceCell to enable returning &ValKindNadrieril2020-01-304-71/+64
|
* Replace Form with a pair of RefCells, in preparation for OnceCellNadrieril2020-01-301-88/+71
|
* Move Form::PartialExpr into ThunkNadrieril2020-01-301-36/+46
|
* Only the Form must be in a RefCellNadrieril2020-01-301-61/+67
|
* Avoid unnecessary allocations of `Value`sNadrieril2020-01-305-25/+25
|
* Clarify normalization to ensure we only nze onceNadrieril2020-01-304-58/+55
|
* Move Thunk value into ValueInternalNadrieril2020-01-302-35/+32
|
* Prepare ValueInternal with new `Form`sNadrieril2020-01-301-53/+50
|
* Factor out text literals in ValueNadrieril2020-01-303-83/+110
| | | | This allows encapsulating invariants properly and reducing clutter
* Remove type parameter from ValueKindNadrieril2020-01-304-35/+21
|
* Remove Value visitorNadrieril2020-01-303-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 levelNadrieril2020-01-306-8/+7
|
* Move parser files to syntax/Nadrieril2020-01-304-3/+3
|
* Move main API to lib.rsNadrieril2020-01-3013-254/+256
|
* Move normalize under nzeNadrieril2020-01-306-6/+5
|
* Move Value-related stuff under semantics::nzeNadrieril2020-01-308-12/+8
|
* Introduce Thunks and normalize lazilyNadrieril2020-01-307-45/+95
|
* Remove NF marker; it was premature optimizationNadrieril2020-01-301-22/+11
|
* Increase encapsulation for ClosuresNadrieril2020-01-302-12/+32
|
* Make unnormalized Values unobservableNadrieril2020-01-302-10/+3
|
* s/as_whnf/kind/Nadrieril2020-01-304-55/+53
|
* TweakNadrieril2020-01-301-9/+4
|
* Remove use of take_mutNadrieril2020-01-303-33/+22
|
* Encapsulate partially applied builtin in a separate structNadrieril2020-01-306-74/+120
|
* Remove debug output in type errorsNadrieril2020-01-304-97/+6
|
* No need for the current env to tck Foo/build closuresNadrieril2020-01-303-27/+3
|
* Clean importsNadrieril2020-01-301-7/+8
|
* Actually, no need for keeping extra args in apply_builtinNadrieril2020-01-301-25/+10
|
* Remove old typecheck moduleNadrieril2020-01-303-21/+5
|
* Move builtins-related code to its own moduleNadrieril2020-01-308-568/+553
|
* Cleanup variable handlingNadrieril2020-01-2910-65/+39
|
* Move envs to their own filesNadrieril2020-01-2911-241/+239
|
* Finally get rid of all of the shift/subst_shift !Nadrieril2020-01-295-112/+3
|
* s/QuoteEnv/VarEnv/Nadrieril2020-01-293-43/+40
|
* Use NameEnv in tyexpr_to_exprNadrieril2020-01-292-35/+23
|
* Remove dead codeNadrieril2020-01-2910-1202/+31
|
* Fix insufficient normalizationNadrieril2020-01-293-10/+16
|
* Use TyExpr in TypedNadrieril2020-01-2930-172/+158
|
* Use Normalized in serde_dhallNadrieril2020-01-292-63/+85
|
* Fix more bugsNadrieril2020-01-295-65/+59
|
* Implement assert & merge and fix more bugsNadrieril2020-01-284-104/+172
|
* Thread env through nztion to fix Foo/build closuresNadrieril2020-01-287-51/+95
|
* Fix all sorts of variable shenanigansNadrieril2020-01-285-117/+69
|
* Start rewriting value comparisonNadrieril2020-01-271-0/+107
|
* Fix a bunch of bugs and more tckNadrieril2020-01-279-57/+104
|