summaryrefslogtreecommitdiff
path: root/dhall/src/phase/normalize.rs (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-12-15Move contents of dhall under a semantics submoduleNadrieril1-794/+0
2019-12-15Reexport dhall_syntax as a module in dhallNadrieril1-5/+5
2019-11-11rustfmtNadrieril1-1/+3
2019-11-11Parse projection by expressionNadrieril1-0/+1
2019-09-03Upgrade rust toolchainNadrieril1-3/+4
2019-08-31Implement parsing of `toMap` keywordNadrieril1-0/+1
2019-08-25Remove now unnecessary VoVF enumNadrieril1-22/+24
2019-08-25Rework apply_builtin to enforce preservation of type informationNadrieril1-183/+156
2019-08-25Enforce type information almost everywhereNadrieril1-16/+9
2019-08-25Check consistency of type informationNadrieril1-2/+2
2019-08-25Keep type information through normalizationNadrieril1-69/+131
2019-08-23Clarify which syntax elements are completely handled in the tck phaseNadrieril1-22/+18
2019-08-23Keep type information after RecursiveRecordTypeMergeNadrieril1-62/+13
2019-08-20Use Ret in apply_builtinNadrieril1-90/+101
2019-08-20Propagate type information in Value::app()Nadrieril1-19/+16
2019-08-20Track evaluation status alongside ValueF in VoVFNadrieril1-32/+40
2019-08-20Introduce a new enum to store either a Value or a ValueFNadrieril1-60/+81
2019-08-20Naming tweaksNadrieril1-29/+23
2019-08-20Add Value::from_builtinNadrieril1-25/+19
2019-08-20CleanupNadrieril1-32/+55
2019-08-20Reuse work to avoid complicated recursion in record mergingNadrieril1-54/+0
2019-08-19Merge TypedValue and ValueNadrieril1-62/+28
2019-08-19Reduce untyped construction of ValuesNadrieril1-26/+46
2019-08-19Use TypedValue instead of Typed in normalize and typecheckNadrieril1-3/+3
Now Typed is only used in dhall::phase, similarly to Parsed/Resolved/Normalized
2019-08-19s/to_valuef/to_whnf/ and avoid cloning ValueFs when possibleNadrieril1-48/+46
2019-08-18Rework ValueInternal and clarify invariants around ValueFNadrieril1-8/+21
2019-08-17s/Thunk/Value/Nadrieril1-103/+105
2019-08-16s/Value/ValueF/Nadrieril1-124/+126
2019-08-16Try to minimize untyped TypedThunksNadrieril1-23/+31
2019-08-16Remove dead codeNadrieril1-21/+1
2019-08-16Reduce api surface of dhall crateNadrieril1-7/+7
Helps detect unused code
2019-08-15Disable some unused unstable featuresNadrieril1-1/+1
2019-08-15Remove special closures from ValueNadrieril1-42/+55
Instead construct their values directly
2019-08-13Store Imports in their own node instead of in EmbedNadrieril1-0/+3
2019-08-13Considerably simplify Embed handlingNadrieril1-1/+0
2019-08-13Stop tracking the absence of Embed values at the type levelNadrieril1-10/+11
2019-08-13s/TypeThunk/TypedThunk/gNadrieril1-17/+17
2019-08-08Update dhall-lang submoduleNadrieril1-0/+1
2019-08-08Add support for dependent typesNadrieril1-3/+9
2019-08-07Add truncated Natural subtractionNadrieril1-0/+10
2019-08-07Remove union literals from the languageNadrieril1-7/+0
2019-08-06Prepare for https://github.com/dhall-lang/dhall-lang/pull/630Nadrieril1-5/+17
2019-08-06rustfmtNadrieril1-1/+2
2019-08-06Add some testsNadrieril1-0/+10
2019-08-06Remove old-style optional literalsNadrieril1-7/+3
2019-08-03rustfmtNadrieril1-1/+3
2019-08-01Add typechecking for RecursiveRecordTypeMerge.FintanH1-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.
2019-08-01Add the typechecking of RecursiveRecordMerge.FintanH1-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.
2019-07-31Reuse the merge_maps function to implement the right-biased unionFintanH1-1/+1
2019-05-12clippyNadrieril1-97/+102