1
1
mirror of https://github.com/github/semantic.git synced 2024-12-23 06:41:45 +03:00
Commit Graph

127 Commits

Author SHA1 Message Date
Rob Rix
67892e9cf1 Define Precise as a GADT indexed by its cell type. 2018-05-10 19:27:20 -04:00
Rob Rix
91ca0e1aba Run Gotos via a newtype to break the cycle in the effects types. 2018-05-09 21:30:34 -04:00
Rob Rix
3cbf66c57e 🔥 TermEffects. 2018-05-09 12:39:22 -04:00
Rob Rix
f18d066c88 🔥 the Term newtype. 2018-05-09 12:36:48 -04:00
Rob Rix
d02fdb419a Only export spec. 2018-05-09 12:36:40 -04:00
Rob Rix
4dca1c121e 🔥 the term parameter to Evaluator. 2018-05-09 12:35:01 -04:00
Rob Rix
3948f74810 Correct the type of the module table effect. 2018-05-08 16:46:17 -04:00
Rob Rix
2aae3dbdd3 Allow runGoto to return its jump table. 2018-05-08 11:10:35 -04:00
Rob Rix
97915e1410 Rename lambda to closure. 2018-05-08 10:54:32 -04:00
Rob Rix
d9084f9f45 lambda takes the set of free variables as a parameter. 2018-05-08 10:54:04 -04:00
Rob Rix
5a4e6cb0b0 Merge branch 'evaluator-dsl' into evaluate-closures-without-terms 2018-05-08 10:40:41 -04:00
Rob Rix
8881dc0284 Fix an ambiguous reference to runM. 2018-05-08 10:40:25 -04:00
Rob Rix
eacb5b47d7 Implement goto using Goto effects embedding evaluators. 2018-05-08 10:19:50 -04:00
Rob Rix
2b2a6f0cd8 Specialize ValueError to Value. 2018-05-08 09:05:43 -04:00
Rob Rix
b66ea73427 Reassociate errors in the specs. 2018-05-07 16:56:40 -04:00
Rob Rix
d9e76fb2c5 Test that we can call functions. 2018-05-07 16:06:21 -04:00
Rob Rix
c05884195d Add environment errors to the mix. 2018-05-07 16:06:04 -04:00
Rob Rix
de1a8e1164 Clean up a redundant pure. 2018-05-07 16:05:55 -04:00
Rob Rix
b589d4f7d0 Define a FreeVariables instance for Term. 2018-05-07 16:05:27 -04:00
Rob Rix
ca778fd76e We don’t need to constrain the term type any more. 2018-05-07 15:25:05 -04:00
Rob Rix
28eec7a7ec Lift TermEvaluators to Subterm evaluators. 2018-05-07 15:19:57 -04:00
Rob Rix
a4e823681f Define a TermEvaluator synonym. 2018-05-07 15:19:36 -04:00
Rob Rix
3b4b953506 Run evaluators in IO. 2018-05-07 15:13:01 -04:00
Rob Rix
1bd817bc76 Test that we can construct integers. 2018-05-07 15:10:41 -04:00
Rob Rix
980fd74aed Define an evaluator helper. 2018-05-07 15:10:11 -04:00
Rob Rix
47d48d695e Add types for terms, values, and the effects for evaluating terms. 2018-05-07 15:09:50 -04:00
Rob Rix
c427be3670 Stub in a spec for Evaluator. 2018-05-07 14:21:05 -04:00