Rob Rix
|
2ee3951af6
|
Export a bunch of types from Evaluator.
|
2018-05-02 18:29:40 -04:00 |
|
Rob Rix
|
4e6d9b94fe
|
Generalize putHeap.
|
2018-05-02 18:28:33 -04:00 |
|
Rob Rix
|
7020d9ae4f
|
Add a JumpTable synonym.
|
2018-05-02 18:26:57 -04:00 |
|
Rob Rix
|
3d98bd7797
|
Generalize getConfiguration.
|
2018-05-02 18:22:55 -04:00 |
|
Rob Rix
|
9561898a5b
|
Generalize getEnv.
|
2018-05-02 18:22:44 -04:00 |
|
Rob Rix
|
dc1a33f111
|
Derive a Lower instance for Cache.
|
2018-05-02 18:12:02 -04:00 |
|
Rob Rix
|
587dc4155a
|
Define a Cacheable synonym combing the necessary Ord constraints.
|
2018-05-02 18:11:22 -04:00 |
|
Rob Rix
|
c21f430bf4
|
Generalize getHeap.
|
2018-05-02 17:53:01 -04:00 |
|
Rob Rix
|
d281a3f7e6
|
Make Evaluator a superclass of MonadEvaluator.
|
2018-05-02 17:51:54 -04:00 |
|
Rob Rix
|
4f96dcee10
|
Add an Evaluator typeclass which determines its location, term, & value types.
|
2018-05-02 17:28:56 -04:00 |
|
Rob Rix
|
dee8a2af1d
|
Define a convenience for the per-module effects.
|
2018-05-02 16:36:40 -04:00 |
|
Rob Rix
|
17b1d2aaf5
|
Combine the handlers for reader effects.
|
2018-05-02 16:33:41 -04:00 |
|
Rob Rix
|
da3ddd2b17
|
Fix the specs.
|
2018-05-02 16:10:56 -04:00 |
|
Rob Rix
|
243fb331fc
|
Fix stale references to inj in the tests.
|
2018-05-02 15:55:10 -04:00 |
|
Rob Rix
|
911111987a
|
Return to piecemeal state effects, and combine them in Evaluating.
|
2018-05-02 15:54:11 -04:00 |
|
Rob Rix
|
28dcf70677
|
Push onto the load stack in evalModule.
|
2018-05-02 15:42:14 -04:00 |
|
Rob Rix
|
8193cb8596
|
The LoadStack holds ModuleInfo.
|
2018-05-02 15:41:23 -04:00 |
|
Rob Rix
|
ccba15905d
|
Modify the load stack locally.
|
2018-05-02 15:40:23 -04:00 |
|
Rob Rix
|
afdacec83f
|
Add a helper to ask for the current SomeOrigin.
|
2018-05-02 14:59:59 -04:00 |
|
Rob Rix
|
d368756bc3
|
The monad determines the location, term, and value types alone.
|
2018-05-02 13:47:30 -04:00 |
|
Rob Rix
|
4224f31cae
|
Rephrase catchReturn as handleReturn.
|
2018-05-02 13:18:54 -04:00 |
|
Rob Rix
|
152fe6a6a8
|
Fix the ambiguity around Sum.
|
2018-05-02 13:14:51 -04:00 |
|
Rob Rix
|
23cf827964
|
Use an equality constraint for evalModule’s inner effects.
|
2018-05-02 12:47:16 -04:00 |
|
Rob Rix
|
baa3f41b39
|
Provide EvalModule in the body of evalModule.
|
2018-05-02 12:33:22 -04:00 |
|
Rob Rix
|
44c250bcf3
|
Use type applications instead of proxies when calling apply.
|
2018-05-02 12:13:01 -04:00 |
|
Rob Rix
|
df343bf67d
|
We don’t need to apply explicitly.
|
2018-05-02 12:10:02 -04:00 |
|
Rob Rix
|
ebc8e01cc4
|
Use our own local definition of Sum.
|
2018-05-02 12:00:15 -04:00 |
|
Rob Rix
|
d5a35c7904
|
Rename weaken to weakenSum.
|
2018-05-02 11:49:20 -04:00 |
|
Rob Rix
|
f2eae271fc
|
Rename inject/project to injectSum/projectSum.
|
2018-05-02 11:48:55 -04:00 |
|
Rob Rix
|
73153b0192
|
🔥 our definition of decompose.
|
2018-05-02 11:47:52 -04:00 |
|
Rob Rix
|
fc5556c8ed
|
Spell out the reinjection function.
|
2018-05-02 11:47:29 -04:00 |
|
Rob Rix
|
ea8c694b3f
|
Rename inj'/prj' to unsafeInject/unsafeProject.
|
2018-05-02 11:47:20 -04:00 |
|
Rob Rix
|
1a562e6e07
|
Rename inj/prj to inject/project.
|
2018-05-02 11:46:56 -04:00 |
|
Rob Rix
|
3313e12047
|
Move the INLINEs for inj'/prj' next to them.
|
2018-05-02 11:46:45 -04:00 |
|
Rob Rix
|
b31333f637
|
Say sum again.
|
2018-05-02 11:29:10 -04:00 |
|
Rob Rix
|
1c6bafd144
|
Rename Member/Members to Element/Elements.
|
2018-05-02 11:27:37 -04:00 |
|
Rob Rix
|
f53d944546
|
Don’t warn on the patterns we use in the where clauses.
|
2018-05-02 11:26:51 -04:00 |
|
Rob Rix
|
50a3fecfe3
|
Rename our Union type to Sum.
|
2018-05-02 11:25:44 -04:00 |
|
Rob Rix
|
171d349eee
|
Define our own Union type.
|
2018-05-02 10:59:30 -04:00 |
|
Rob Rix
|
a4754a4937
|
Make currentModule total within the scope of module evaluation.
|
2018-05-01 20:59:01 -04:00 |
|
Rob Rix
|
0aa506fae5
|
Extract evaluateEntryPoint to the top level.
|
2018-05-01 17:58:21 -04:00 |
|
Rob Rix
|
6069c95d1d
|
Return Maybe from load/require.
|
2018-05-01 17:52:05 -04:00 |
|
Rob Rix
|
e8e2f0bd8a
|
Extract evalTerm to the top level.
|
2018-05-01 17:15:35 -04:00 |
|
Rob Rix
|
7eabddf61c
|
Use an equality constraint to simplify the context of evaluatePackageBody.
|
2018-05-01 15:54:20 -04:00 |
|
Rob Rix
|
24428f94e9
|
No need to scope these type variables.
|
2018-05-01 15:53:38 -04:00 |
|
Rob Rix
|
0f62131434
|
Provide the current package’s info statically.
|
2018-05-01 15:47:56 -04:00 |
|
Rob Rix
|
09fb3921b6
|
🔥 a redundant constraint.
|
2018-05-01 15:23:31 -04:00 |
|
Rob Rix
|
15daf32655
|
There aren’t any constrained class methods here any more.
|
2018-05-01 15:18:36 -04:00 |
|
Rob Rix
|
afddcf4e6d
|
Remove the Recursive constraint from MonadEvaluatable.
|
2018-05-01 15:16:43 -04:00 |
|
Rob Rix
|
3d1f08d444
|
Remove the Evaluatable constraint from MonadEvaluatable.
|
2018-05-01 15:15:47 -04:00 |
|