Rob Rix
1828a1a433
Use Analysis.Intro in Core’s syntax.
2019-12-20 10:22:16 -05:00
Rob Rix
1e1bd838f3
Reformat the Core destructors using LambdaCase.
...
stylish-haskell is willing to leave these definitions alone.
2019-12-20 10:10:02 -05:00
Rob Rix
d876d010ff
Reformat language pragmas.
2019-12-20 10:07:02 -05:00
Rob Rix
086018019f
Reformat language pragmas.
2019-12-20 10:06:42 -05:00
Rob Rix
1948e2b619
Sort/align imports.
2019-12-20 10:06:37 -05:00
Rob Rix
2fe68f3d0f
Alignment.
2019-12-20 10:06:32 -05:00
Rob Rix
a50ab43314
Reformat language extensions.
2019-12-20 10:06:01 -05:00
Rob Rix
96f5204338
Sort imports.
2019-12-20 10:04:32 -05:00
Rob Rix
850811bf06
Reformat an import list.
2019-12-20 10:04:21 -05:00
Rob Rix
38da7a41ec
Align cases locally.
2019-12-20 10:04:11 -05:00
Rob Rix
580525a3d8
Reformat language pragmas.
2019-12-20 10:03:51 -05:00
Rob Rix
2052c70e73
Sort imports.
2019-12-20 10:03:45 -05:00
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