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

18704 Commits

Author SHA1 Message Date
Rob Rix
f534844342 Define DeadCodeEffects in terms of EvaluatorEffects. 2018-03-07 10:28:23 -05:00
Rob Rix
ad234eb56b Define TracingEffects in terms of EvaluatorEffects. 2018-03-07 10:27:31 -05:00
Rob Rix
743c17e74c Extract an EvaluatorEffects synonym. 2018-03-07 10:24:07 -05:00
Rob Rix
0cc7ece380 📝 Tracer. 2018-03-07 10:21:40 -05:00
Rob Rix
83228ce526 Use the Tracer effect synonym in TracingEffects. 2018-03-07 10:21:02 -05:00
Rob Rix
762ab7f31d Define a Tracer effect synonym. 2018-03-07 10:20:50 -05:00
Rob Rix
a3e500ca14 Define a Bitraversable instance for Subterm. 2018-03-07 10:18:37 -05:00
Rob Rix
26b34baf5e Define a Bifoldable instance for Subterm. 2018-03-07 10:18:01 -05:00
Rob Rix
bd608f713c Derive Foldable, Functor, & Traversable instances for Subterm. 2018-03-07 10:17:24 -05:00
Rob Rix
1072ab151b Define a Bifunctor instance for Subterm. 2018-03-07 10:16:59 -05:00
Rob Rix
352fc2ff07 🔥 redundant constraints on evaluateTerm. 2018-03-07 09:14:38 -05:00
Rob Rix
89b0890336 Reformat TracingAnalysis onto a new line. 2018-03-07 09:09:13 -05:00
Rob Rix
758f1032c1 🔥 a redundant import. 2018-03-07 09:07:42 -05:00
Rob Rix
62a0548573 Re-export Subterm/SubtermAlgebra. 2018-03-07 09:07:37 -05:00
Rob Rix
beca16b30b 🔥 a bunch of redundant imports. 2018-03-07 09:05:53 -05:00
Rob Rix
85cea81d5c Re-export a bunch of effect-related modules. 2018-03-07 09:03:51 -05:00
Rob Rix
fa6062fa9c List the Control.Abstract.Analysis exports explicitly. 2018-03-07 09:02:51 -05:00
Rob Rix
b2f9b1f644 Align the effect comments. 2018-03-06 17:38:47 -05:00
Rob Rix
9563c4c309 📝 how to recover the linear/reachable state analyses. 2018-03-06 17:32:30 -05:00
Rob Rix
f78d8c717f 🔥 evaluateReach. 2018-03-06 17:31:15 -05:00
Rob Rix
927c3fe608 Generalize evaluateTrace to arbitrary trace types. 2018-03-06 17:31:01 -05:00
Rob Rix
3579304444 Sort the contexts of evaluateTrace and evaluateReach. 2018-03-06 17:29:32 -05:00
Rob Rix
833e6af0f5 Rename v to value. 2018-03-06 17:28:20 -05:00
Rob Rix
95510010ba 🔥 the commented-out evTell. 2018-03-06 17:27:06 -05:00
Rob Rix
68b7ffc612 Define analyzeTerm using getConfiguration. 2018-03-06 17:26:45 -05:00
Rob Rix
8be2e14849 Define getConfiguration in terms of askRoots. 2018-03-06 17:25:22 -05:00
Rob Rix
f6cd19ddb9 Add askRoots to the MonadEvaluator interface with a default definition. 2018-03-06 17:24:14 -05:00
Rob Rix
6650e4de4e Define getConfiguration as a method on MonadEvaluator. 2018-03-06 17:21:46 -05:00
Rob Rix
4e9f13a035 Use the embedSubterm helper. 2018-03-06 17:18:00 -05:00
Rob Rix
ee911a0990 🔥 MonadTrace. 2018-03-06 17:14:52 -05:00
Rob Rix
c9a74da233 Re-enable the tracing analysis. 2018-03-06 17:13:58 -05:00
Rob Rix
ca32bdc551 Define 'analyzeTerm' for 'CachingAnalysis'. 2018-03-06 16:46:38 -05:00
Rob Rix
76c69dce45 📝 analyzeTerm. 2018-03-06 16:43:23 -05:00
Rob Rix
e0e1dc2e67 Reformat/expand the 📝 for evaluateTerm. 2018-03-06 16:43:15 -05:00
Rob Rix
b0b93c7147 Move the 📝 for evaluateTerm down. 2018-03-06 16:40:49 -05:00
Rob Rix
25e5af382e Define dead code analysis using analyzeTerm. 2018-03-06 16:40:15 -05:00
Rob Rix
2ab50cda5e Evaluation analyzes via eval. 2018-03-06 16:39:37 -05:00
Rob Rix
c68728ea06 Define an analyzeTerm method on MonadAnalysis. 2018-03-06 16:36:06 -05:00
Patrick Thomson
c3d01b6602 Resuscitate the caching evaluator.
The caching analysis had been disabled, as it was still written in the
open-interpreter style. This patch restores it, defining a
`CachingAnalysis` newtype that uses nondeterministic but convergent
caching in its `MonadAnalysis` instance. This also defines an
`embedSubterm` helper that is useful in defining new analysis passes.

Thanks to @robrix for 🍐!
2018-03-06 13:51:00 -05:00
Josh Vera
7e22cf8f69 Merge pull request #1522 from github/haddock-fixes-mk2
Further fixes for Haddock syntax.
2018-03-05 16:59:29 -05:00
Patrick Thomson
b12caf004d Further fixes for Haddock syntax. 2018-03-05 16:40:34 -05:00
Patrick Thomson
1549cbf00a Merge pull request #1519 from github/if-evaluation
Support ifthenelse evaluation
2018-03-05 14:37:45 -05:00
Rob Rix
9ddf2a376f Merge branch 'master' into if-evaluation 2018-03-05 09:47:37 -05:00
Rob Rix
ffa0a972ff Merge pull request #1515 from github/evaluatable-simplification
Evaluatable simplification
2018-03-05 09:47:06 -05:00
Rob Rix
3ff77c9a9e Merge branch 'master' into evaluatable-simplification 2018-03-05 09:41:14 -05:00
Patrick Thomson
70f30ab254 Merge pull request #1518 from github/graph-filename-module
Include module names in import-graph SymbolDeclarations.
2018-03-02 15:42:20 -08:00
Patrick Thomson
d4c39f075b remove otiose comment 2018-03-02 15:35:37 -08:00
Patrick Thomson
1da2668d60 Fix end-to-end tests. 2018-03-02 15:30:51 -08:00
Patrick Thomson
226ff88723 Rename MonadFunction to MonadValue. 2018-03-02 11:45:56 -08:00
Patrick Thomson
cc487a3872 Evaluatable instance for If and NoOp. 2018-03-02 11:32:25 -08:00