1
1
mirror of https://github.com/github/semantic.git synced 2024-12-28 09:21:35 +03:00
Commit Graph

1362 Commits

Author SHA1 Message Date
Rick Winfrey
317d4a3849 Merge branch 'master' into error-context 2018-08-08 10:33:41 -07:00
Charlie Somerville
e92846c518 expand Ctx to EvalContext in get, put, and with function names 2018-08-08 13:08:54 +10:00
Rick Winfrey
383b6208ee Rename ErrorContext -> BaseError 2018-08-07 16:50:55 -07:00
Rick Winfrey
f1ad72e4fc No longer needed 2018-08-07 16:44:42 -07:00
Rick Winfrey
2a2c275704 Wrap EnvironmentError with BaseError 2018-08-02 12:21:05 -07:00
Charlie Somerville
d00fced1bb Merge branch 'master' into charliesome/context 2018-08-01 11:45:46 +10:00
Rob Rix
863c2774eb Merge branch 'master' into value-effects 2018-07-25 09:22:30 -04:00
Timothy Clem
b35276f35f Some graph styling 2018-07-24 11:01:01 -07:00
Charlie Somerville
13fae0af42 add new EvalContext type replacing Environment in evaluation 2018-07-24 14:10:35 +10:00
Josh Vera
86fe1bff1d Merge branch 'master' into control-flow-part2 2018-07-23 18:34:53 -04:00
Rob Rix
c1f220e5b0 Merge branch 'bump-effects-for-pure-effect' into value-effects 2018-07-23 12:54:54 -04:00
Rob Rix
bf388b4f50 Generalizes providingLiveSet to PureEffects. 2018-07-23 11:07:55 -04:00
Rob Rix
16e0a43a77 Generalize the graphing handlers to PureEffects. 2018-07-23 11:07:30 -04:00
Rob Rix
bc3b493f31 Stub in a Function effect. 2018-07-23 09:15:16 -04:00
Timothy Clem
deb5961091 Little bit of naming clarity 2018-07-20 16:55:20 -07:00
Timothy Clem
7e63e150ed Pretty up the graphs a bit 2018-07-20 09:36:03 -07:00
Timothy Clem
19ad88d280 Store entire address as state so we can connect calls sites to declarations 2018-07-20 09:35:56 -07:00
Timothy Clem
1d0cd96c1f Don't worry about a list for now - this isn't going to work anyway 2018-07-19 15:56:28 -07:00
Timothy Clem
4f2a3aca19 Note about null path in Load eavesdrop 2018-07-19 14:39:54 -07:00
Timothy Clem
ce461ea0e8 Merge remote-tracking branch 'origin/master' into vertex++ 2018-07-19 14:35:32 -07:00
Timothy Clem
eb2156d5ea Keep track of a list of member access names 2018-07-19 14:23:39 -07:00
Timothy Clem
7d7ef88cd4 Better capture control flow 2018-07-19 14:23:39 -07:00
Timothy Clem
b67f3b1e8a Bring back Lookup path 2018-07-19 11:24:45 -07:00
Timothy Clem
126cfa2234 Capture context for both Method and Function declarations 2018-07-19 10:36:51 -07:00
Timothy Clem
549adf887c Remove extraneous do 2018-07-19 10:36:30 -07:00
Timothy Clem
f2e16aeb19 No need to graph both load and lookup 2018-07-19 10:36:24 -07:00
Timothy Clem
9e6ea73e6f Give edges a recommended length to help with layout 2018-07-19 10:36:06 -07:00
Timothy Clem
68858a5089 Track context in which variables are found 2018-07-18 13:11:03 -07:00
Timothy Clem
015d18ce18 Change up dot formatting a bit 2018-07-18 13:10:41 -07:00
Timothy Clem
b4c6593a12 Capture method decls and identifiers as vertices 2018-07-17 15:15:28 -07:00
Rob Rix
41b9fd65ca Specialize caching to []. 2018-07-17 15:36:58 -04:00
Rob Rix
52b41bb0c4 Give Hole an extra parameter for context about errors. 2018-07-17 15:05:08 -04:00
Timothy Clem
70f01d0806 Keep additional structured info around in Vertex 2018-07-17 10:02:40 -07:00
Patrick Thomson
6a65fc0bc0 Fix otiose parts of the diff. 2018-07-13 12:10:17 -04:00
Patrick Thomson
acb4ac18c3 Address Rob's concerns. 2018-07-13 12:06:11 -04:00
Patrick Thomson
ae550c59c8 Merge remote-tracking branch 'origin/master' into abstract-call-graph 2018-07-13 11:11:46 -04:00
Rob Rix
caa5285836 Merge branch 'master' into fix-interposition 2018-07-11 09:27:36 -04:00
Charlie Somerville
301aca987e remove redundant constraints 2018-07-11 15:20:35 +10:00
Rob Rix
98cc30705d Bump effects for https://github.com/joshvera/effects/pull/55. 2018-07-10 12:53:56 -04:00
Rob Rix
5d433205d5 Put the environment instead of running locally.
This fixes an error where caching always looked up a configuration that hadn’t been cached due to `locally` initiating a fresh scope.

Co-Authored-By: Patrick Thomson <patrick.william.thomson@gmail.com>
2018-07-09 13:36:27 -04:00
Patrick Thomson
c5b722dbba Merge remote-tracking branch 'origin/master' into abstract-call-graph 2018-07-09 11:28:24 -04:00
Rob Rix
95cbf207e8 🔥 Evaluating. 2018-07-04 11:38:57 -04:00
Rob Rix
ddbd2690bb Merge branch 'master' into higher-order-effects 2018-07-04 10:53:04 -04:00
Patrick Thomson
0ca991f0dd Fix terrible bug associated with environment comparisons being false 2018-07-03 14:29:47 -04:00
Patrick Thomson
bef406b5c7 whitespace changes 2018-06-29 16:00:23 -04:00
Patrick Thomson
b63624ac41 cleanup 2018-06-29 15:54:45 -04:00
Patrick Thomson
076aef0015 this appears to work 2018-06-29 15:28:32 -04:00
Patrick Thomson
ebbead18ec Merge remote-tracking branch 'origin/master' into abstract-call-graph 2018-06-29 12:21:33 -04:00
Patrick Thomson
3b7f91975c 🍐 with Rob 2018-06-26 16:08:40 -04:00
Rob Rix
a236328056 Merge branch 'master' into higher-order-effects 2018-06-26 15:14:28 -04:00
Patrick Thomson
bbf814acc1 Merge remote-tracking branch 'origin/master' into import-graph-mk2 2018-06-26 13:49:24 -04:00
Rob Rix
f9722f15a8 Eavesdrop on Modules effects. 2018-06-26 10:59:39 -04:00
Rob Rix
aa2e0f47f3 interpose no longer takes the pure parameter. 2018-06-26 10:00:13 -04:00
Rob Rix
92d50024ee Ditto for the call graph. 2018-06-22 10:34:24 -04:00
Rob Rix
9fa1befecb Graph modules which don’t import, and aren’t imported by, other modules. 2018-06-22 10:33:29 -04:00
Rob Rix
dda4c00cb5 🔥 Evaluating. 2018-06-21 13:26:22 -04:00
Rob Rix
b9b52b55da Use the currentModule synonym to clarify intent. 2018-06-21 11:02:27 -04:00
Rob Rix
b2a8168059 Abbreviate the Load edge construction. 2018-06-21 10:50:52 -04:00
Rob Rix
0e265cc4f6 Add edges for lookups. 2018-06-21 10:50:24 -04:00
Rob Rix
1cc372ab67 Export moduleVertex. 2018-06-21 10:42:47 -04:00
Rob Rix
a4d8b481be Merge branch 'master' into higher-order-effects 2018-06-21 10:11:59 -04:00
Rob Rix
4e6c11faec Rename graphingModulePaths to graphingModuleInfo. 2018-06-20 14:43:14 -04:00
Rob Rix
e863802944 Add an analysis to graph module paths. 2018-06-20 12:38:05 -04:00
Rob Rix
948e4f57b0 Fix some indentation. 2018-06-20 12:37:58 -04:00
Rob Rix
86d2930455 Generalize appendGraph. 2018-06-20 12:35:50 -04:00
Rob Rix
70047c3b48 Correct a couple of doc comments. 2018-06-20 12:32:34 -04:00
Rob Rix
e972abd2e3 Factor runFresh out of evaluating. 2018-06-20 12:17:46 -04:00
Patrick Thomson
1a09aae96a Merge branch 'master' into import-graph-mk2 2018-06-19 16:04:34 -04:00
Josh Vera
cce18d9ecb Merge branch 'master' into topologically-sorted-imports 2018-06-19 13:43:01 -04:00
Rob Rix
8f373155a8 Apply the $ hints. 2018-06-19 09:34:52 -04:00
Rob Rix
1b245278a1 🔥 the value parameter from Modules. 2018-06-18 13:18:20 -04:00
Patrick Thomson
659500551c Merge remote-tracking branch 'origin/master' into import-graph-mk2 2018-06-15 19:30:50 -04:00
Rob Rix
ccbd880155 Re-export Lower in Prologue. 2018-06-15 11:41:15 -04:00
Patrick Thomson
19e7ff7510 Reinstate import graph functionality. 2018-06-13 12:47:35 -04:00
Patrick Thomson
36d5b7562a Revert "gRPC import graph" 2018-06-13 12:34:35 -04:00
Rob Rix
5a6d39e7f5 Swap these for consistency. 2018-06-12 15:59:46 -04:00
Rob Rix
2e61eead4c State nests leftwards. 2018-06-12 15:47:29 -04:00
Rob Rix
44d6ccf815 Require Effect instances all over the place. 2018-06-12 15:38:10 -04:00
Rob Rix
956959ac07 Swap the module table ordering. 2018-06-12 15:37:43 -04:00
Rob Rix
9bd39b251c Align the derived EvaluatingState instances. 2018-06-12 15:30:15 -04:00
Patrick Thomson
9c758ad3fe Lint 2018-06-12 14:00:51 -04:00
Patrick Thomson
81482ee696 Merge remote-tracking branch 'origin/master' into import-graph-mk2 2018-06-12 12:09:49 -04:00
Charlie Somerville
a9a49ec56c remove value parameter from ValueRef 2018-06-12 14:23:48 +10:00
Patrick Thomson
a69b80d4f4 warnings 2018-06-08 17:10:25 -04:00
Patrick Thomson
14b01603e4 it works as long as you package the prelude and comment out Util 2018-06-08 14:40:12 -04:00
Charlie Somerville
ddb18160f7 Merge branch 'master' into charliesome/value-ref-address 2018-06-08 11:33:01 +10:00
Rob Rix
c74263d9d6 Revert "Variable lookup is total, failing when the Env effect is run instead."
This reverts commit b96aaffa19a548a0ff50c862460e1a12b4031e89.
2018-06-06 10:39:10 -04:00
Rob Rix
b19c381edb 🔥 the Fail effect. 2018-06-06 09:45:40 -04:00
Rob Rix
4003cd717d Represent MemberAccess with a Name as its second field. 2018-06-06 09:20:15 -04:00
Rob Rix
3c5c0d8038 Rename unName to formatName. 2018-06-06 09:17:13 -04:00
Rob Rix
6fdf2c274e Variable lookup is total, failing when the Env effect is run instead. 2018-06-06 08:22:42 -04:00
Patrick Thomson
4a7ebf71dd Merge remote-tracking branch 'origin/master' into fix-maybe-language 2018-06-04 18:33:03 -04:00
Patrick Thomson
2a8e02856b tentative commit to move from Maybe Language to Language.
should fix a lot of issues around decoding Maybe Language fields.
2018-06-04 14:54:30 -04:00
Patrick Thomson
7c9b1ec17e Merge remote-tracking branch 'origin/master' into text-names 2018-06-04 11:46:54 -04:00
Charlie Somerville
7478c4a6de Merge branch 'master' into charliesome/value-ref-address 2018-06-01 12:50:11 -07:00
Charlie Somerville
32268b1710 Merge branch 'master' into charliesome/value-ref-address 2018-05-31 20:34:05 -05:00
Charlie Somerville
207a105e94 raise FreeVariable error from address 2018-05-31 15:14:45 -05:00
Charlie Somerville
c358460155 clean up warnings 2018-05-31 13:04:55 -05:00
Charlie Somerville
3c38b5fa46 Merge branch 'master' into charliesome/value-ref-address 2018-05-31 11:54:44 -05:00
Rob Rix
6e482be698 Rename Store back to Allocator for now. 2018-05-31 10:21:57 -04:00
Rob Rix
798b65d82c gc is an action in Store. 2018-05-31 09:40:06 -04:00
Rob Rix
a72515b858 Move gc/reachable into Control.Abstract.Heap. 2018-05-31 09:33:04 -04:00
Rob Rix
58b1de14fc 💄 2018-05-31 09:18:37 -04:00
Rob Rix
42540a1e20 Rename Allocator to Store. 2018-05-31 08:47:16 -04:00
Patrick Thomson
c4c92053de cleanup 2018-05-31 00:10:45 -04:00
Patrick Thomson
d144087486 Merge remote-tracking branch 'origin/master' into text-names 2018-05-30 23:51:11 -04:00
Rob Rix
c5f3187946 Merge branch 'master' into swap-module-table-ordering 2018-05-30 18:57:38 -04:00
Rob Rix
969d31adbf Swap the ordering of the evaluated module table. 2018-05-30 18:54:58 -04:00
Patrick Thomson
64fd3b0fcc Use Text rather than ByteString for Name values. 2018-05-30 18:16:39 -04:00
Rob Rix
a6025262c5 🔥 the environment from EvaluatingState. 2018-05-30 15:32:54 -04:00
Rob Rix
7072b1f8dd Don’t re-export Fail. 2018-05-30 15:19:50 -04:00
Rob Rix
d01ef4e0b7 🔥 the exports in the evaluating state. 2018-05-30 15:17:35 -04:00
Timothy Clem
f7448522c8 Merge branch 'master' into enhanced-json-output 2018-05-30 11:14:39 -07:00
Rob Rix
19d4ebefa4 🔥 putEnv. 2018-05-30 14:08:57 -04:00
Rob Rix
10d9454895 Converge locally w.r.t. the environment. 2018-05-30 14:05:42 -04:00
Rob Rix
a243f2d837 Evaluating runs the env state. 2018-05-30 12:52:30 -04:00
Rob Rix
707c5819df 🔥 redundant constraints. 2018-05-30 12:51:16 -04:00
Rob Rix
99b92d336f 🔥 redundant constraint. 2018-05-30 12:41:04 -04:00
Timothy Clem
cc3a6c1a52 🔥 ConstructorLabel and constructorLabel 2018-05-30 09:39:38 -07:00
Timothy Clem
51394186f9 Merge remote-tracking branch 'origin/master' into enhanced-json-output 2018-05-30 07:50:29 -07:00
Charlie Somerville
12c6c39861 cut State Environment over to Env effect 2018-05-30 09:48:16 -05:00
Rob Rix
2baf449d20 Merge branch 'long-live-the-address' into env-effect 2018-05-30 10:22:51 -04:00
Rob Rix
4f2df09a63 Merge branch 'the-address-is-dead,-long-live-the-address' into env-effect 2018-05-30 10:15:16 -04:00
Rob Rix
52e8502970 Rename Located’s fields to address…. 2018-05-30 10:03:40 -04:00
Rob Rix
8fcffd0837 Rename the location type parameter to address. 2018-05-30 09:55:32 -04:00
Rob Rix
89ae7740ed Use location instead of Address in the heap/env interfaces. 2018-05-30 09:25:32 -04:00
Rob Rix
0624afe626 Heap operates on locations. 2018-05-30 08:17:22 -04:00
Rob Rix
dcdcf52bea Live takes locations, not addresses. 2018-05-30 08:05:23 -04:00
Rob Rix
4ae5cb5f4e 🔥 Live’s value parameter. 2018-05-30 08:03:38 -04:00
Rob Rix
d4d5cc04d5 Don’t provide a Reader for the default environment. 2018-05-29 21:41:04 -04:00
Rob Rix
9a8acdc328 Wrap an Address. 2018-05-29 21:23:50 -04:00
Rob Rix
5110a936a0 🔥 the value parameter to Live. 2018-05-29 21:21:43 -04:00
Timothy Clem
2d08451d87 Call [] Statements 2018-05-29 14:25:31 -07:00
Charlie Somerville
b72b442e0c WIP Merge branch 'master' into charliesome/value-ref-address 2018-05-29 16:06:45 -05:00
Timothy Clem
d47a06d47f 🔥 IdentifierName 2018-05-29 13:49:55 -07:00
Timothy Clem
6acb7ffa21 Give our List constructors a real name in output 2018-05-29 13:43:19 -07:00
Timothy Clem
bda6dd29d6 Call it term instead of category 2018-05-29 13:43:19 -07:00
Charlie Somerville
e0b4be74a9 Merge branch 'master' into charliesome/value-ref-address 2018-05-29 11:38:09 -05:00
Rob Rix
d869fa4ec8 🔥 some redundant constraints. 2018-05-29 12:14:19 -04:00
Rob Rix
f5572e41ca Use Member instead of Members everywhere! 2018-05-29 12:09:09 -04:00
Rob Rix
0354dc5330 Resume EnvironmentError at location, not value. 2018-05-28 15:29:24 -04:00
Rob Rix
eeb604569d Merge branch 'master' into decompose-values 2018-05-24 09:11:19 -04:00
Charlie Somerville
10022d4de9 push Address location value into the guts of the evaluator 2018-05-23 14:55:44 -07:00
Charlie Somerville
12742d681d ValueRef should contain addresses, not values directly 2018-05-23 13:36:08 -07:00
Rob Rix
12cec06dfe Remove Environment’s value parameter. 2018-05-22 17:37:35 -04:00
Rob Rix
2a46f5ea6f Remove Exports’ value parameter. 2018-05-22 17:31:41 -04:00
Rob Rix
0984c8c725 Add vertices for lookups. 2018-05-22 14:20:03 -04:00
Rob Rix
577e5e4ace 🔥 graphingLoadErrors. 2018-05-22 14:13:51 -04:00
Rob Rix
fd6dbe2ba1 🔥 a redundant constraint. 2018-05-22 13:56:39 -04:00
Rob Rix
a95b84ac2a Don’t graph packages in graphingModules. 2018-05-22 13:56:20 -04:00