Rob Rix
7418fbaa74
Reformat language pragmas.
2019-12-20 10:03:34 -05:00
Rob Rix
10386f7251
Sort imports.
2019-12-20 10:03:27 -05:00
Rob Rix
53dda90d7f
🔥 recordFrame.
2019-12-20 10:02:56 -05:00
Rob Rix
624483b812
Reformat the language pragmas in the Concrete analysis.
2019-12-20 10:02:03 -05:00
Rob Rix
59e5839b67
🔥 a redundant FIXME.
2019-12-20 09:58:30 -05:00
Rob Rix
c05904c607
Note a couple of FIXMEs.
2019-12-20 09:58:03 -05:00
Rob Rix
37e5ba4986
Split concretization into the primitive operations.
...
This allows us to produce values of the correct type for abstract domains which don’t distinguish between primitive types, and to act on the expected type when e.g. typechecking by unifying.
2019-12-20 09:57:19 -05:00
Rob Rix
582c71f355
Reformat the language pragmas.
2019-12-19 15:12:44 -05:00
Rob Rix
cd96cdb4da
Change the stylish-haskell config to format language pragmas vertically and not align their closing tags.
2019-12-19 15:12:40 -05:00
Rob Rix
3f43fb7290
Apply stylish-haskell to Analysis.Effect.Domain.
2019-12-19 15:11:50 -05:00
Rob Rix
2bbd2e08ef
Reformat the language extensions.
2019-12-19 14:58:30 -05:00
Rob Rix
26cf1d3a15
Revert "Represent import graphs’ semi-abstract values more discretely."
...
This reverts commit 2e3713db34
.
2019-12-19 14:57:01 -05:00
Rob Rix
2e3713db34
Represent import graphs’ semi-abstract values more discretely.
2019-12-19 14:56:55 -05:00
Rob Rix
f00affb958
🔥 commented-out Analysis implementations.
2019-12-19 14:44:22 -05:00
Rob Rix
89d7bd5aaf
Strengthen the constraints available to eval.
2019-12-19 14:44:08 -05:00
Rob Rix
00e506cdec
Run the Domain effect.
2019-12-19 14:43:28 -05:00
Rob Rix
0f030b3dcc
Note a FIXME.
2019-12-19 14:42:39 -05:00
Rob Rix
bcb4eb99d8
Define an Algebra instance for DomainC.
2019-12-19 14:42:21 -05:00
Rob Rix
3003f3fc10
Define a handler for Domain.
2019-12-19 14:33:15 -05:00
Rob Rix
187284782e
Define a MonadTrans instance.
2019-12-19 14:33:11 -05:00
Rob Rix
3f23042191
Derive some instances.
2019-12-19 14:33:02 -05:00
Rob Rix
3ff821bdde
Define a Domain carrier.
2019-12-19 14:32:54 -05:00
Rob Rix
17a6f02894
Note a FIXME.
2019-12-19 14:31:40 -05:00
Rob Rix
fec21c77f5
Strengthen the constraints available to eval.
2019-12-19 14:31:22 -05:00
Rob Rix
0f7188a864
Run the Domain effect.
2019-12-19 14:30:24 -05:00
Rob Rix
3be69996fb
Define an Algebra instance for DomainC.
2019-12-19 14:29:44 -05:00
Rob Rix
db5ef7be3c
Define a MonadTrans instance for DomainC.
2019-12-19 14:19:00 -05:00
Rob Rix
b007c9df46
Define a Domain carrier.
2019-12-19 14:18:51 -05:00
Rob Rix
6e5cb7fa66
Semi closures wrap a scope.
2019-12-19 14:16:39 -05:00
Rob Rix
abd647ebc4
Wrap closure bodies in Named.
2019-12-19 14:11:36 -05:00
Rob Rix
c707fe59df
Strengthen the constraints available to typechecked evaluators.
2019-12-19 14:07:33 -05:00
Rob Rix
ac274cb336
Combine the Has constraints.
2019-12-19 14:06:35 -05:00
Rob Rix
964d8e20d2
Allow the evaluator to use the heap & env effects.
2019-12-19 14:03:01 -05:00
Rob Rix
875a4087d6
Allow the evaluator to use the Domain effect.
2019-12-19 14:00:24 -05:00
Rob Rix
87433746b7
Run the Domain effect for concrete analysis.
2019-12-19 13:59:47 -05:00
Rob Rix
b013780cc2
Define an Algebra instance for DomainC.
2019-12-19 13:56:54 -05:00
Rob Rix
a64c337b1e
Graph the heap using the addresses in closure bodies.
2019-12-19 13:46:16 -05:00
Rob Rix
387824aa7b
Closure holds a Scope.
2019-12-19 13:44:01 -05:00
Rob Rix
1f9e0fa18f
Reformat a context.
2019-12-19 13:33:11 -05:00
Rob Rix
de096192ba
Define a MonadTrans instance for DomainC.
2019-12-19 13:25:47 -05:00
Rob Rix
e518beb826
Derive some instances for DomainC.
2019-12-19 13:25:41 -05:00
Rob Rix
585b05fa61
🔥 the name parameters from Decl & ScopeGraph.
2019-12-19 13:00:35 -05:00
Rob Rix
d93686e01e
Scope graphing takes addressed terms.
2019-12-19 12:58:43 -05:00
Rob Rix
da63c0cf6a
Define an Addr synonym for scope graphing.
2019-12-19 12:57:57 -05:00
Rob Rix
c3b632fd9d
Import graphing uses addressed terms.
2019-12-19 12:55:09 -05:00
Rob Rix
e78cc7bbfc
Define an Addr synonym for import graphing.
2019-12-19 12:54:55 -05:00
Rob Rix
f7c2c74ef8
Take addressed terms in Concrete.
2019-12-19 12:53:39 -05:00
Rob Rix
d22039b768
Rename the Precise synonym to Addr.
2019-12-19 12:52:30 -05:00
Rob Rix
fdb0f519d9
Define an Addr synonym for typechecking.
2019-12-19 12:51:45 -05:00
Rob Rix
4485d3622d
🔥 Evaluator.
2019-12-19 12:32:13 -05:00