Rob Rix
|
7c686d1ccb
|
📝 unprefixEither.
|
2019-08-06 12:04:22 -04:00 |
|
Rob Rix
|
eb2ede6d1d
|
Subterm.
|
2019-08-06 12:02:47 -04:00 |
|
Rob Rix
|
e2ec37ebdb
|
📝 unprefix’s parameters.
|
2019-08-06 12:01:30 -04:00 |
|
Rob Rix
|
ab07e5a0d6
|
📝 unprefix’s purpose.
|
2019-08-06 11:59:20 -04:00 |
|
Rob Rix
|
7b0a4155da
|
📝 unprefix.
|
2019-08-06 11:57:10 -04:00 |
|
Rob Rix
|
93eba20619
|
Rename un/unEither to unprefix/unprefixEither.
|
2019-08-06 11:55:43 -04:00 |
|
Rob Rix
|
93eba1d946
|
📝 the practical takeaway.
|
2019-08-06 11:47:35 -04:00 |
|
Rob Rix
|
c09e465efb
|
📝 RightModule and its laws.
|
2019-08-06 11:40:15 -04:00 |
|
Rob Rix
|
f141319f84
|
Rename User to Name.
|
2019-08-06 11:18:54 -04:00 |
|
Rob Rix
|
901014d6ac
|
🔥 a redundant FIXME.
|
2019-07-30 09:38:09 -04:00 |
|
Rob Rix
|
e58dea96fb
|
Factor out how we extend bindings.
|
2019-07-30 09:21:03 -04:00 |
|
Rob Rix
|
100d6a18ff
|
Extend the scope graph on assignment.
|
2019-07-30 09:14:32 -04:00 |
|
Rob Rix
|
196f2bff17
|
Add declarations to records.
|
2019-07-29 16:16:46 -04:00 |
|
Rob Rix
|
a73b267ebd
|
Rename Entry to Decl.
|
2019-07-29 16:10:09 -04:00 |
|
Rob Rix
|
ed94104e27
|
Map entries to references.
|
2019-07-29 16:08:56 -04:00 |
|
Rob Rix
|
a4066b9df6
|
Construct scope graphs on deref.
|
2019-07-29 16:07:29 -04:00 |
|
Rob Rix
|
6cb9af299e
|
Correct the Monoid instance for ScopeGraph.
|
2019-07-29 15:51:52 -04:00 |
|
Rob Rix
|
3bf6cb61fd
|
Export ScopeGraph’s constructor & field.
|
2019-07-29 15:51:38 -04:00 |
|
Rob Rix
|
34da6ada5c
|
Rename a couple of copy-pasta’d variables.
|
2019-07-29 15:36:37 -04:00 |
|
Rob Rix
|
a04ccbb08c
|
Write record fields to the heap in the abstract analyses.
|
2019-07-29 13:33:07 -04:00 |
|
Rob Rix
|
c7bee13fd4
|
Generalize scopeGraph over the term type.
|
2019-07-29 13:22:18 -04:00 |
|
Rob Rix
|
3bafa9a8b3
|
Generalize runFile over the term type.
|
2019-07-29 13:21:29 -04:00 |
|
Rob Rix
|
4296244f9e
|
Merge branch 'generalize-analyses-over-the-term-type' into scope-graphs
|
2019-07-29 13:19:51 -04:00 |
|
Rob Rix
|
bd5aea62b3
|
Fix the doctests of the concrete analysis.
|
2019-07-29 13:04:15 -04:00 |
|
Rob Rix
|
0b86f913ee
|
Clean up some language extensions.
|
2019-07-29 12:59:29 -04:00 |
|
Rob Rix
|
e9853c1a3f
|
Avoid allocating a useless cell.
|
2019-07-29 12:58:20 -04:00 |
|
Rob Rix
|
2c28e536e9
|
🔥 the FrameId reader effect.
|
2019-07-29 12:57:44 -04:00 |
|
Rob Rix
|
15e5731d93
|
Generalize concrete over the term types.
|
2019-07-29 12:55:13 -04:00 |
|
Rob Rix
|
da0d780f81
|
Generalize runFile over the term type.
|
2019-07-29 12:54:01 -04:00 |
|
Rob Rix
|
d8175305da
|
Generalize addressStyle over the term type.
|
2019-07-29 12:38:10 -04:00 |
|
Rob Rix
|
bd8f0ca4c1
|
Generalize heapAddressGraph over the term type.
|
2019-07-29 12:37:54 -04:00 |
|
Rob Rix
|
a549039dd3
|
Generalize heapValueGraph over the term type.
|
2019-07-29 12:37:39 -04:00 |
|
Rob Rix
|
021350b6da
|
Generalize heapGraph over the term type.
|
2019-07-29 12:37:25 -04:00 |
|
Rob Rix
|
ea174b2144
|
Generalize runHeap over the term type.
|
2019-07-29 12:36:58 -04:00 |
|
Rob Rix
|
c3cf286d9d
|
Generalize EdgeType over the term type.
|
2019-07-29 12:36:44 -04:00 |
|
Rob Rix
|
1192971d38
|
Generalize concreteAnalysis over the term type.
|
2019-07-29 12:36:14 -04:00 |
|
Rob Rix
|
2dde20051e
|
Generalize lookupConcrete over the term type.
|
2019-07-29 12:35:59 -04:00 |
|
Rob Rix
|
2559f589a8
|
Generalize Heap over the term type.
|
2019-07-29 12:35:02 -04:00 |
|
Rob Rix
|
fde2a448d3
|
Abstract Concrete over the term type.
|
2019-07-29 12:34:04 -04:00 |
|
Rob Rix
|
4553d59faf
|
Generalize importGraph over the term type.
|
2019-07-29 12:31:52 -04:00 |
|
Rob Rix
|
b92611458e
|
Change the kind of the term field to *.
|
2019-07-29 12:30:38 -04:00 |
|
Rob Rix
|
8b8a33071e
|
Generalize runFile over the term type.
|
2019-07-29 12:28:18 -04:00 |
|
Rob Rix
|
e2875572b9
|
Generalize typecheckingFlowInsensitive over the term type.
|
2019-07-29 12:25:03 -04:00 |
|
Rob Rix
|
813cde359e
|
Reformat the signature for runFile to accommodate the evaluator.
|
2019-07-29 12:23:52 -04:00 |
|
Rob Rix
|
97ae6e9b21
|
Use a type synonym for types.
|
2019-07-29 12:23:07 -04:00 |
|
Rob Rix
|
6652520175
|
Reformat the signature for runFile.
|
2019-07-29 12:21:50 -04:00 |
|
Rob Rix
|
5c67ea0322
|
Reformat the signature for typecheckingFlowInsensitive.
|
2019-07-29 12:20:55 -04:00 |
|
Rob Rix
|
2666f6cbc8
|
Generalize runFile over the term type.
|
2019-07-29 12:20:25 -04:00 |
|
Rob Rix
|
99d9a8d94d
|
Parameterize runFile by the evaluator.
|
2019-07-29 12:19:10 -04:00 |
|
Rob Rix
|
7e7f33c6d1
|
Generalize importGraphAnalysis over the term type.
|
2019-07-29 12:15:22 -04:00 |
|
Rob Rix
|
e022b47eef
|
Reformat the signature for importGraph.
|
2019-07-29 12:14:31 -04:00 |
|
Rob Rix
|
3387eacf98
|
Abstract Value over the term type.
|
2019-07-29 12:14:07 -04:00 |
|
Rob Rix
|
54430ac56d
|
Abstract Semi over the term type.
|
2019-07-29 12:13:15 -04:00 |
|
Rob Rix
|
65e218417f
|
Import graphs don’t need to collect the set of addresses in scope when abstracting.
|
2019-07-29 12:11:54 -04:00 |
|
Rob Rix
|
9acaaaedc0
|
🔥 the parentAddr in ImportGraph.
|
2019-07-29 12:10:48 -04:00 |
|
Rob Rix
|
465319b8d4
|
Simplify deref for Typecheck & ImportGraph.
|
2019-07-29 12:08:16 -04:00 |
|
Rob Rix
|
104bdacaae
|
Generalize Analysis over the term type.
|
2019-07-29 12:03:12 -04:00 |
|
Rob Rix
|
c82623db36
|
Generalize cacheTerm over the term type.
|
2019-07-29 11:59:30 -04:00 |
|
Rob Rix
|
fdc20a4256
|
Generalize convergeTerm over the term type.
|
2019-07-29 11:58:44 -04:00 |
|
Rob Rix
|
05fa90ef84
|
Generalize the Cache type over the term type.
|
2019-07-29 11:58:02 -04:00 |
|
Rob Rix
|
7b6b6a4259
|
Generalize convergeTerm over the address type.
|
2019-07-29 11:54:57 -04:00 |
|
Rob Rix
|
56984fa7a6
|
Define Cache as a newtype.
|
2019-07-29 11:52:48 -04:00 |
|
Rob Rix
|
fcf654032c
|
Rename the name parameter to address.
|
2019-07-29 11:49:16 -04:00 |
|
Rob Rix
|
3119c222cb
|
Derive the Eq, Ord, & Show instances for Ann.
|
2019-07-29 11:29:47 -04:00 |
|
Rob Rix
|
5ec40693c3
|
Generalize the various example programs to arbitrary carriers for Core.
|
2019-07-29 11:28:30 -04:00 |
|
Rob Rix
|
604f1d97b7
|
Generalize the generators to arbitrary carriers for Core.
|
2019-07-29 11:24:31 -04:00 |
|
Rob Rix
|
4fdef93d72
|
Generalize the parser to arbitrary carriers for Core.
|
2019-07-29 11:24:22 -04:00 |
|
Rob Rix
|
e2db378be6
|
Fix the tests.
|
2019-07-29 11:18:19 -04:00 |
|
Rob Rix
|
e9b21f6ebf
|
Generate terms capable of annotation in the parser.
|
2019-07-29 11:18:15 -04:00 |
|
Rob Rix
|
01f1176348
|
Split out an Ann datatype representing locations.
|
2019-07-29 11:12:06 -04:00 |
|
Rob Rix
|
99a4f8ed5a
|
Write an empty scope graph into the heap during abstraction.
|
2019-07-26 15:45:52 -04:00 |
|
Rob Rix
|
16b1442b4b
|
Simplify deref slightly.
|
2019-07-26 15:35:43 -04:00 |
|
Rob Rix
|
0c106865f7
|
Record where names were bound.
|
2019-07-26 15:19:39 -04:00 |
|
Rob Rix
|
09f2362cd2
|
Abstract closures to their graphs.
|
2019-07-26 15:13:43 -04:00 |
|
Rob Rix
|
cb5b0fb2c4
|
Don’t allocate a pointless heap cell.
|
2019-07-25 13:28:02 -04:00 |
|
Rob Rix
|
b8f7bb06db
|
Don’t provide a current FrameId.
|
2019-07-25 13:11:07 -04:00 |
|
Rob Rix
|
3654aac2c8
|
🔥 the parent addr from the import & scope graph analyses.
|
2019-07-25 13:09:16 -04:00 |
|
Rob Rix
|
53e08b38ba
|
🔥 the specialization of String in the scope graph.
|
2019-07-25 13:03:05 -04:00 |
|
Rob Rix
|
f6cd84eba7
|
Merge branch 'sequence-values-in-the-abstract-domain' into scope-graphs
|
2019-07-25 12:57:07 -04:00 |
|
Rob Rix
|
0f34dcec45
|
Sequence values in the abstract domain.
|
2019-07-25 12:33:33 -04:00 |
|
Rob Rix
|
cd950fd6ec
|
Derive a Semigroup instance for Term Monotype a.
|
2019-07-25 12:33:13 -04:00 |
|
Rob Rix
|
7d9100f816
|
Derive a Semigroup instance for Concrete.
|
2019-07-25 12:33:00 -04:00 |
|
Rob Rix
|
fde3424c13
|
Dedent all the Analysis fields.
|
2019-07-25 12:32:47 -04:00 |
|
Rob Rix
|
057a4f8b5a
|
Copy in the import graph definition.
|
2019-07-25 09:31:36 -04:00 |
|
Rob Rix
|
5a40e01ff1
|
Derive Eq, Ord, & Show instances for Entry.
|
2019-07-25 09:30:15 -04:00 |
|
Rob Rix
|
8c59f9dc42
|
Only import the one symbol from Data.Text.
|
2019-07-25 09:30:02 -04:00 |
|
Rob Rix
|
455990dbc2
|
Change entrySymbol’s type to Text.
|
2019-07-24 08:07:35 -04:00 |
|
Rob Rix
|
a0bf65f43b
|
Move Edge into Concrete.
|
2019-07-23 16:11:04 -04:00 |
|
Rob Rix
|
7c24672921
|
Parse whitespace following string literals.
|
2019-07-23 15:53:18 -04:00 |
|
Rob Rix
|
41a31d1873
|
Simplify the projection rule.
|
2019-07-23 15:49:22 -04:00 |
|
Rob Rix
|
15430badec
|
Alignment.
|
2019-07-23 15:44:02 -04:00 |
|
Rob Rix
|
0254bc9895
|
Parse more escape sequences.
|
2019-07-23 15:43:25 -04:00 |
|
Rob Rix
|
f10cbb21b3
|
Generate string literals.
|
2019-07-23 15:43:11 -04:00 |
|
Rob Rix
|
3d65ae97ef
|
Sort the atoms.
|
2019-07-23 15:27:03 -04:00 |
|
Rob Rix
|
ac3f487703
|
Correct the precedence of load.
|
2019-07-23 15:24:19 -04:00 |
|
Rob Rix
|
3b6741456d
|
Rename edge to load.
|
2019-07-23 15:23:45 -04:00 |
|
Rob Rix
|
e4470bcbcc
|
Generate load instructions.
|
2019-07-23 15:23:26 -04:00 |
|
Rob Rix
|
0d530dc078
|
Sort the recursive generators.
|
2019-07-23 15:22:12 -04:00 |
|
Rob Rix
|
4bd2129511
|
Lower the precedence in lambda bodies.
|
2019-07-23 15:20:20 -04:00 |
|
Rob Rix
|
8e5c2163b8
|
Correct the precedence of recursive bindings.
|
2019-07-23 15:19:59 -04:00 |
|