1
1
mirror of https://github.com/github/semantic.git synced 2025-01-02 04:10:29 +03:00
Commit Graph

21241 Commits

Author SHA1 Message Date
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
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
Rob Rix
ce206dd4e2 Correct the references to relay. 2018-05-03 15:29:48 -04:00
Rob Rix
0e9da643d9 Define a handler for EvalModule effects. 2018-05-03 15:18:56 -04:00
Rob Rix
ff39183283 Define a handler for EvalClosure effects. 2018-05-03 15:18:48 -04:00
Rob Rix
cff909a595 Re-export Reader & State. 2018-05-03 13:58:43 -04:00
Rob Rix
b402116102 Derive a Lower instnace for Live. 2018-05-03 13:49:45 -04:00
Rob Rix
f35f9bbbc0 Correct the type of handleState. 2018-05-03 13:48:48 -04:00
Rob Rix
aa4f630961 Fix the type of handleState. 2018-05-03 13:45:33 -04:00
Rob Rix
3e3f0b1fe2 📝 raiseHandler. 2018-05-03 13:45:19 -04:00
Rob Rix
9443980d60 Move raiseHandler into the Handlers section. 2018-05-03 13:44:50 -04:00
Rob Rix
ff59bf5147 Add a handler for State effects. 2018-05-03 13:44:30 -04:00
Rob Rix
49b8136163 Add a handler for Reader effects. 2018-05-03 13:44:23 -04:00
Rob Rix
e283ae0e37 Generalize the Caching functionality. 2018-05-02 19:27:20 -04:00
Rob Rix
083712864a Generalize a bunch of the import graph functions. 2018-05-02 19:26:25 -04:00
Rob Rix
64132b12a3 Redefine MonadEvaluator as a constraint synonym. 2018-05-02 19:25:57 -04:00
Rob Rix
4f459bd542 Generalize askOrigin. 2018-05-02 19:16:59 -04:00
Rob Rix
56c67158cf Generalize lookupWith. 2018-05-02 19:16:24 -04:00
Rob Rix
a7306d9f73 Generalize lookupEnv. 2018-05-02 19:16:17 -04:00
Rob Rix
e828a77529 Generalize defaultEnvironment. 2018-05-02 19:16:04 -04:00
Rob Rix
e4b611c5b6 Generalize modifyHeap. 2018-05-02 19:07:57 -04:00
Rob Rix
d073020526 Clean up Evaluating’s imports & use the JumpTable synonym. 2018-05-02 18:45:07 -04:00
Rob Rix
63f4544496 Generalize scatter. 2018-05-02 18:42:58 -04:00
Rob Rix
8ca1a5112a Use raiseHandler when gathering nondeterminism. 2018-05-02 18:42:35 -04:00
Rob Rix
5d0fce0e6d Generalize a bunch of Interpreter instances. 2018-05-02 18:38:03 -04:00
Rob Rix
2ee3951af6 Export a bunch of types from Evaluator. 2018-05-02 18:29:40 -04:00
Rob Rix
4e6d9b94fe Generalize putHeap. 2018-05-02 18:28:33 -04:00
Rob Rix
7020d9ae4f Add a JumpTable synonym. 2018-05-02 18:26:57 -04:00
Rob Rix
3d98bd7797 Generalize getConfiguration. 2018-05-02 18:22:55 -04:00
Rob Rix
9561898a5b Generalize getEnv. 2018-05-02 18:22:44 -04:00
Rob Rix
dc1a33f111 Derive a Lower instance for Cache. 2018-05-02 18:12:02 -04:00
Rob Rix
587dc4155a Define a Cacheable synonym combing the necessary Ord constraints. 2018-05-02 18:11:22 -04:00
Rob Rix
c21f430bf4 Generalize getHeap. 2018-05-02 17:53:01 -04:00
Rob Rix
d281a3f7e6 Make Evaluator a superclass of MonadEvaluator. 2018-05-02 17:51:54 -04:00
Rob Rix
4f96dcee10 Add an Evaluator typeclass which determines its location, term, & value types. 2018-05-02 17:28:56 -04:00
Rob Rix
dee8a2af1d Define a convenience for the per-module effects. 2018-05-02 16:36:40 -04:00
Rob Rix
17b1d2aaf5 Combine the handlers for reader effects. 2018-05-02 16:33:41 -04:00
Rob Rix
da3ddd2b17 Fix the specs. 2018-05-02 16:10:56 -04:00
Rob Rix
243fb331fc Fix stale references to inj in the tests. 2018-05-02 15:55:10 -04:00
Rob Rix
911111987a Return to piecemeal state effects, and combine them in Evaluating. 2018-05-02 15:54:11 -04:00