1
1
mirror of https://github.com/github/semantic.git synced 2024-12-24 07:25:44 +03:00
Commit Graph

21350 Commits

Author SHA1 Message Date
Rob Rix
1a91e91a31 Inline evaluatingModulesWith into evaluatePackageBodyWith. 2018-05-06 10:09:25 -04:00
Rob Rix
157a7a35f5 Inline handleEvalClosures into evalTerm. 2018-05-06 10:06:44 -04:00
Rob Rix
f8e1d03f66 Clean up the type of evaluatingModulesWith using equality constraints. 2018-05-06 09:58:14 -04:00
Rob Rix
7344a1b67c Handle closure/module effects in the same place. 2018-05-06 09:55:06 -04:00
Rob Rix
4529ee89e9 Don’t require callers to provide the module & term explicitly. 2018-05-06 09:13:46 -04:00
Rob Rix
4cfa690059 Provide per-module and -term handlers. 2018-05-04 19:48:45 -04:00
Rob Rix
ceb4c40646 Correct the Value type. 2018-05-04 19:46:03 -04:00
Rob Rix
b7858fe4cc Specialize importGraphAnalysis to Located & Value. 2018-05-04 19:44:59 -04:00
Rob Rix
314f1dfd5c Derive a Lower instance for Latest. 2018-05-04 19:44:33 -04:00
Rob Rix
8e73d99889 Give a type for importGraphAnalysis. 2018-05-04 19:41:10 -04:00
Rob Rix
d31dce7490 Provide empty cells with a Lower constraint. 2018-05-04 19:40:53 -04:00
Rob Rix
1e173c4f2c Use ScopedTypeVariables to allow type applications against erroring. 2018-05-04 19:38:14 -04:00
Rob Rix
f83b002e78 Export EvaluatingEffects. 2018-05-04 19:38:01 -04:00
Rob Rix
dab97a9298 analyze takes an explicit interpreter parameter. 2018-05-04 19:27:52 -04:00
Rob Rix
b5485e8ab8 Rephrase Caching as cachingTerms, convergingModules, and caching handlers. 2018-05-04 19:24:07 -04:00
Rob Rix
a3c04da9fe Clean up the Tracing module. 2018-05-04 19:13:23 -04:00
Rob Rix
cdb8f26de4 Rephrase Tracing as tracingTerms & tracing handlers. 2018-05-04 19:12:51 -04:00
Rob Rix
04fb5d36b1 Fix up some language extensions &c. 2018-05-04 19:10:01 -04:00
Rob Rix
4c83723fbe Correct the name of the location type parameter. 2018-05-04 19:06:04 -04:00
Rob Rix
88ec9d7230 Rephrase Dead as revivingTerms, killingModules, and providingDeadSet handlers. 2018-05-04 19:01:01 -04:00
Rob Rix
cdb7169ecb Derive a Lower instance for Dead. 2018-05-04 18:55:21 -04:00
Rob Rix
7d97d97cc4 Rephrase Collecting & Retaining as collectingTerms & providingLiveSet handlers. 2018-05-04 18:50:48 -04:00
Rob Rix
9af39cad2f Rephrase TypeChecking as a simple handler. 2018-05-04 18:43:45 -04:00
Rob Rix
fd85d202db Deal with the fallout in Evaluatable. 2018-05-04 18:42:06 -04:00
Rob Rix
115c21074b Rephrase ImportGraphAnalysis as a composed handler. 2018-05-04 18:41:46 -04:00
Rob Rix
97775268e6 Fix up some imports. 2018-05-04 18:41:23 -04:00
Rob Rix
57bfb04409 Deal with the fallout in Located. 2018-05-04 18:41:10 -04:00
Rob Rix
488ef67c26 Deal with the fallout of Evaluator changes in Value. 2018-05-04 18:40:59 -04:00
Rob Rix
af7d178183 Deal with the fallout of Evaluator changes in Addressable. 2018-05-04 18:40:44 -04:00
Rob Rix
9cd92dd310 Rephrase ImportGraphing as graphingTerms, graphingModules, and importGraphing handlers. 2018-05-04 18:40:22 -04:00
Rob Rix
8a8bfc05a3 Rephrase BadVariables as a resumingBadVariables handler. 2018-05-04 18:40:07 -04:00
Rob Rix
b5c2cd6282 Rephrase BadValues as a resumingBadValues handler. 2018-05-04 18:39:54 -04:00
Rob Rix
fefe5bf671 Rephrase BadSyntax as a resumingBadSyntax handler. 2018-05-04 18:39:41 -04:00
Rob Rix
3fba25f491 Rephrase BadModuleResolutions as a resumingBadModuleResolutions handler. 2018-05-04 18:39:30 -04:00
Rob Rix
c16263ee28 Rephrase BadAddresses as a resumingBadAddresses handler. 2018-05-04 18:39:14 -04:00
Rob Rix
c7462b2de3 Rephrase Evaluating as providingCurrentTerm, providingCurrentModule, and evaluating handlers. 2018-05-04 18:38:59 -04:00
Rob Rix
6707b51627 Evaluator is a newtype. 2018-05-04 18:38:24 -04:00
Rob Rix
6972847818 Rephrase erroring as a simple handler. 2018-05-04 18:37:56 -04:00
Rob Rix
93895186cf Imagine there’s no MonadAnalysis.
It’s easy if you try.
2018-05-04 18:37:37 -04:00
Rob Rix
bc7b639b11 Add a helper lifting handlers over subterm algebras. 2018-05-04 16:18:44 -04:00
Patrick Thomson
926e81b8a0 Fix benchmarks.
The interface in Semantic.Util had changed.
Also removes the old `evalRubyFile` and `evalPythonFile` functions,
since they did not typecheck in ghci and do nothing that the project
equivalents don't.
2018-05-04 13:49:37 -04:00
Rob Rix
40af10cf39 Dedent some comments. 2018-05-04 12:31:06 -04:00
Rob Rix
0a6decad08 Make BadAddresses consistent with the other analyses. 2018-05-04 11:55:33 -04:00
Rob Rix
b55e7aa2c2 Make BadValues consistent with the other analyses. 2018-05-04 11:54:51 -04:00
Rob Rix
0d9002b6d7 Make BadModuleResolutions consistent with the other analyses. 2018-05-04 11:54:32 -04:00
Rob Rix
2e468c5836 Re-export a bunch of effects from Evaluator. 2018-05-04 11:23:35 -04:00
Rob Rix
4108302aed Split MonadAnalysis into AnalyzeModule & AnalyzeTerm classes. 2018-05-04 11:19:36 -04:00
Rob Rix
da833e9ac7 Constrain evaluateModule. 2018-05-04 11:16:43 -04:00
Rob Rix
e155f74e20 Put a few constraints back in MonadEvaluatable. 2018-05-04 11:16:02 -04:00
Rob Rix
4050d96628 Eta-reduce handleReturn. 2018-05-03 15:30:19 -04:00