1
1
mirror of https://github.com/github/semantic.git synced 2024-12-19 04:41:47 +03:00
Commit Graph

279 Commits

Author SHA1 Message Date
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
Rob Rix
cc403afe27
🔥 Analysis. 2019-12-19 12:30:05 -05:00
Rob Rix
6810624e2c
Note a fixme. 2019-12-19 12:02:28 -05:00
Rob Rix
76c56e387d
Concretize records. 2019-12-19 11:59:39 -05:00
Rob Rix
cb2a9959ce
Add records to Intro. 2019-12-19 11:56:42 -05:00
Rob Rix
e546950f29
Parameterize terms by addresses. 2019-12-19 11:52:05 -05:00
Rob Rix
1bc3c65efe
🔥 the term parameter from Analysis. 2019-12-19 11:18:54 -05:00
Rob Rix
a3ccc126b0
🔥 abstract & apply from Analysis. 2019-12-19 11:18:08 -05:00
Rob Rix
039148aa89
Define a smart constructor for concretizing lambdas. 2019-12-19 11:14:01 -05:00
Rob Rix
9f2a2fc819
Define a smart constructor for constructing lambdas. 2019-12-19 11:11:47 -05:00
Rob Rix
a60380ad09
Revert "Parameterize terms by addresses."
This reverts commit 1d292b0395.
2019-12-19 11:06:44 -05:00
Rob Rix
1d292b0395
Parameterize terms by addresses. 2019-12-19 11:06:40 -05:00
Rob Rix
f85c31c127
Merge branch 'master' into analysis-effects 2019-12-19 10:54:29 -05:00
Rob Rix
443b4ca8e1
Add lambdas to Intro. 2019-12-18 15:13:38 -05:00
Rob Rix
63427b9d60
Alignment. 2019-12-18 15:12:15 -05:00
Patrick Thomson
7f1190abaf Delete old implementations. 2019-12-18 11:23:38 -05:00
Patrick Thomson
1d9b5d29e6 Depend on it in semantic-analysis. 2019-12-18 11:23:19 -05:00
Rob Rix
cfc8bdfe38
🔥 Ignored. 2019-12-18 10:54:54 -05:00
Rob Rix
6485f858ed
Move Named & Ignored into Analysis.Name. 2019-12-18 10:51:02 -05:00
Rob Rix
667f894ec3
Merge branch 'ghcide-is-painless' into analysis-effects 2019-12-18 09:49:08 -05:00
Patrick Thomson
6bebd84deb Officially require GHC 8.8. 2019-12-13 15:48:49 -05:00
Patrick Thomson
77a1b4697e More import fixes. 2019-12-13 11:47:34 -05:00
Rob Rix
aac1c92dc9
🔥 string/asString from Analysis. 2019-12-13 11:46:04 -05:00
Rob Rix
0fc9f5dc6d
🔥 unit from Analysis. 2019-12-13 11:44:57 -05:00
Rob Rix
a8d670cd19
Define smart constructors for concretization at specific types. 2019-12-13 11:42:58 -05:00
Rob Rix
9a3e06b070
Define smart constructors for unit, bool, & string construction. 2019-12-13 11:36:49 -05:00
Rob Rix
a468a66e9e
🔥 bool/asBool. 2019-12-13 11:33:58 -05:00
Patrick Thomson
dc69714053 Merge remote-tracking branch 'origin/master' into glorious-ghc-upgrade-8.8 2019-12-13 11:23:36 -05:00
Rob Rix
34a0afbfba
Merge branch 'fused-effects-one-dot-zero' into analysis-effects 2019-12-12 12:53:27 -05:00
Rob Rix
b726bf8702
🔥 ConstraintKinds. 2019-12-12 11:41:06 -05:00
Rob Rix
e0c47f11bc
🔥 an unnecessary Effect instance for Monotype. 2019-12-12 11:32:01 -05:00
Rob Rix
5ae742cf1c
🔥 unnecessary scoped type variables. 2019-12-12 11:31:24 -05:00
Rob Rix
22b6c3bab3
🔥 some redundant language extensions. 2019-12-12 11:31:15 -05:00
Patrick Thomson
68ab3cbb97 semantic:exe now compiles 2019-12-10 13:32:56 -05:00
Patrick Thomson
0ceba4a160 Ensure Readline is an HFunctor. 2019-11-08 10:24:54 -05:00
Patrick Thomson
f1a5f0439d Fix state type in concrete analysis. 2019-11-08 10:24:18 -05:00
Patrick Thomson
df98749bd0 Fix Analysis.ImportGraph. 2019-11-08 10:23:39 -05:00
Patrick Thomson
e6bf975ee8 Fix state type in runFile. 2019-11-08 10:22:58 -05:00
Patrick Thomson
cac8047ee0 Fix Typecheck analysis.
Had to write this RightModule instance by hand. It typechecks, so I
guess it works?
2019-11-08 10:21:48 -05:00
Patrick Thomson
3feec0e5ee Correct Algebra instance for FailC. 2019-11-08 10:16:34 -05:00
Patrick Thomson
e041d2440d 🔥 state types in FlowInsensitive. 2019-11-08 10:16:20 -05:00
Patrick Thomson
35ea116f00 Bump various FE dependencies from 0.5 to 1.0. 2019-11-07 15:48:57 -05:00
Rob Rix
99184605bd
Run the domain effect during convergence. 2019-11-07 13:11:38 -05:00
Rob Rix
38e42c0cd9
Align. 2019-11-07 12:49:05 -05:00
Rob Rix
ee8017d8dd
Define a Domain carrier for typechecking. 2019-11-07 11:44:42 -05:00
Rob Rix
27559f8f0e
Specialize the Domain effect to Intro. 2019-11-07 10:53:49 -05:00
Rob Rix
4185f213e3
Remove everything but the primitives from Intro. 2019-11-07 10:37:34 -05:00
Rob Rix
4a0aa126fd
Spacing. 2019-11-06 12:48:09 -05:00
Rob Rix
fd19464be5
Rename the parameters to Domain. 2019-11-06 12:47:40 -05:00
Rob Rix
445737a92c
🔥 the old Domain effect. 2019-11-06 12:46:39 -05:00
Rob Rix
34f32970cd
Define a smart constructor for concretization. 2019-11-06 12:44:52 -05:00
Rob Rix
0dd17dcc36
Define a smart constructor for abstracting domain values. 2019-11-06 12:44:03 -05:00
Rob Rix
d4a1080563
Align. 2019-11-06 12:40:50 -05:00
Rob Rix
180af3f1dc
Define an Effect instance for Domain. 2019-11-06 12:39:44 -05:00
Rob Rix
6e1503c1ef
Define an HFunctor instance for Domain. 2019-11-06 12:39:39 -05:00
Rob Rix
7b9e1c0d88
Derive a Generic1 instance for Domain. 2019-11-06 12:39:05 -05:00
Rob Rix
e8a4749653
Stub in a Domain effect with abstraction & concretization operations. 2019-11-06 12:37:58 -05:00
Rob Rix
374f90dc7e
Re-export some stuff. 2019-11-06 12:35:07 -05:00
Rob Rix
903e73cba8
Stub in a module for the Domain effect. 2019-11-06 12:33:15 -05:00
Rob Rix
812a123d8a
Sort Name down. 2019-11-06 12:32:39 -05:00
Rob Rix
ef44b29574
Define a constructor for Lam using Var. 2019-11-06 11:55:28 -05:00
Rob Rix
14ff797594
Define an eliminator for lambdas using Fin. 2019-11-06 11:51:52 -05:00
Rob Rix
f8b1b28a2c
Move lamFin under unlam. 2019-11-06 11:47:40 -05:00
Rob Rix
daa24d1e31
🔥 a redundant handler. 2019-11-05 12:09:19 -05:00
Rob Rix
7f6680d825
Specialize the Env effect to Name. 2019-11-05 12:08:13 -05:00
Rob Rix
23c65d5eb4
Specialize Domain to Name. 2019-11-05 12:02:43 -05:00
Rob Rix
02ae8de2ba
Specialize Analysis to Name. 2019-11-05 12:02:39 -05:00
Rob Rix
f8c26e72d3
🔥 FrameId. 2019-11-05 12:00:32 -05:00
Rob Rix
56b30e4793
🔥 FrameId. 2019-11-05 11:59:59 -05:00
Rob Rix
e9b6658b5e
Specialize flow-insensitive caching to Name addresses. 2019-11-05 11:59:23 -05:00
Rob Rix
1b61ce56ec
Sort explicit quantifiers. 2019-11-05 11:56:22 -05:00
Rob Rix
b33c694094
Sort constraints. 2019-11-05 11:55:54 -05:00
Rob Rix
d06d73c81b
Rename a bunch of type parameters. 2019-11-05 11:55:42 -05:00
Rob Rix
f03de00aec
🔥 ScopedTypeVariables. 2019-11-05 11:54:41 -05:00
Rob Rix
611ae5fb0b
🔥 quantifiers. 2019-11-05 11:53:46 -05:00
Rob Rix
6191f2e1be
Specialize the scope graph analysis to Name. 2019-11-05 11:52:21 -05:00
Rob Rix
4962104008
Specialize Value to Name. 2019-11-05 11:50:32 -05:00
Rob Rix
a3775a1248
Specialize the import graph analysis to Name. 2019-11-05 11:48:42 -05:00
Rob Rix
630759d1d7
Specialize Monotype to Name. 2019-11-05 11:47:01 -05:00
Rob Rix
18bc19a04e
Specialize Type, Constraint, Solution, & Substitution to Name. 2019-11-05 11:45:59 -05:00