Rob Rix
|
3ed51834fa
|
Define an Evaluation newtype.
|
2018-03-01 15:19:32 -05:00 |
|
Rob Rix
|
9638c64024
|
eval definitions have MonadAnalysis available.
|
2018-03-01 15:14:15 -05:00 |
|
Rob Rix
|
db751ae06b
|
Re-export the Control.Abstract.Function module.
|
2018-03-01 15:13:13 -05:00 |
|
Rob Rix
|
5c26fb3091
|
Move MonadFunction into its own module.
|
2018-03-01 15:12:40 -05:00 |
|
Rob Rix
|
74277a8ea8
|
🔥 a FIXME.
|
2018-03-01 15:09:36 -05:00 |
|
Rob Rix
|
32609034a0
|
Abstract load/require over the term evaluator.
|
2018-03-01 15:08:58 -05:00 |
|
Rob Rix
|
c2a60138c6
|
Re-export MonadAnalysis.
|
2018-03-01 15:07:54 -05:00 |
|
Rob Rix
|
be1eeb6f2c
|
MonadAnalysis has functional dependencies.
|
2018-03-01 15:06:26 -05:00 |
|
Rob Rix
|
3b3e6ef5a0
|
Move the constraints into the instances.
|
2018-03-01 15:06:01 -05:00 |
|
Rob Rix
|
f34a15d7c7
|
Move the MonadAnalysis typeclass into Control.Abstract.Analysis.
|
2018-03-01 15:03:23 -05:00 |
|
Rob Rix
|
8f446cbd60
|
Break the dependency of MonadAnalysis on MonadFunction.
|
2018-03-01 15:00:26 -05:00 |
|
Rob Rix
|
f8fea56c6f
|
Stub in a module for the MonadAnalysis interface.
|
2018-03-01 14:57:45 -05:00 |
|
Rob Rix
|
3e89b76015
|
Use MonadAnalysis to evaluate closure bodies.
|
2018-03-01 14:56:43 -05:00 |
|
Rob Rix
|
452fe44952
|
Define a MonadAnalysis interface.
|
2018-03-01 14:56:31 -05:00 |
|
Rob Rix
|
4c5ca748d8
|
Align the signature of eval.
|
2018-03-01 14:53:12 -05:00 |
|
Rob Rix
|
4c53ad729f
|
Add a FIXME.
|
2018-03-01 12:09:34 -05:00 |
|
Rob Rix
|
a9c8e3f85f
|
We don’t use DataKinds here.
|
2018-03-01 12:08:52 -05:00 |
|
Rob Rix
|
f53ec5aa61
|
Sort the language extensions.
|
2018-03-01 12:08:44 -05:00 |
|
Rob Rix
|
6141815573
|
🔥 a redundant constraint for the default signature.
|
2018-03-01 12:08:31 -05:00 |
|
Rob Rix
|
ae3842d2a5
|
We don’t use ScopedTypeVariables.
|
2018-03-01 12:08:03 -05:00 |
|
Rob Rix
|
ceaa2834a8
|
🔥 a redundant type annotation.
|
2018-03-01 12:07:52 -05:00 |
|
Rob Rix
|
56a7483165
|
We don’t use TypeApplications here.
|
2018-03-01 12:07:31 -05:00 |
|
Rob Rix
|
a5d5d26165
|
We don’t use TypeOperators.
|
2018-03-01 12:07:01 -05:00 |
|
Rob Rix
|
65fdc4d805
|
We don’t define GADTs here.
|
2018-03-01 12:06:46 -05:00 |
|
Rob Rix
|
d78b259987
|
FunctionalDependencies implies MultiParamTypeClasses.
|
2018-03-01 12:06:35 -05:00 |
|
Rob Rix
|
acb53236c2
|
We no longer require rank-2 types.
|
2018-03-01 12:06:20 -05:00 |
|
Rob Rix
|
6fe72ffecb
|
Re-add Control.Monad.Effect.Fresh to the exported modules.
|
2018-03-01 12:05:15 -05:00 |
|
Rob Rix
|
f05f0951f0
|
Rename MonadFunctionAbstraction to MonadFunction.
|
2018-03-01 12:01:36 -05:00 |
|
Rob Rix
|
dfea82f776
|
Stub in a Control.Abstract.Function module.
|
2018-03-01 12:00:16 -05:00 |
|
Rob Rix
|
d8540f9e4c
|
Consolidate the Evaluatable module’s exports.
|
2018-03-01 11:59:23 -05:00 |
|
Rob Rix
|
c0b2bd1c8a
|
Rename Control.Monad.Effect.Evaluatable to Data.Abstract.Evaluatable.
|
2018-03-01 11:54:05 -05:00 |
|
Rob Rix
|
ecd81878fc
|
Rename Control.Monad.Effect.Addressable to Control.Abstract.Addressable.
|
2018-03-01 11:50:38 -05:00 |
|
Rob Rix
|
b9b90f28fa
|
Give separate headings for general Data.* and Data.Abstract.*.
|
2018-03-01 11:47:21 -05:00 |
|
Rob Rix
|
b41a9d9d2b
|
Rename Analysis.Abstract.Evaluator to Control.Abstract.Evaluator.
|
2018-03-01 11:46:32 -05:00 |
|
Rob Rix
|
4c79afece2
|
Correct some indentation.
|
2018-03-01 11:36:02 -05:00 |
|
Rob Rix
|
1aff7df28a
|
Inline the allocPrecise binding.
|
2018-03-01 11:35:44 -05:00 |
|
Rob Rix
|
f18f63019a
|
Abstract require over the evaluator type.
|
2018-03-01 11:33:53 -05:00 |
|
Rob Rix
|
3effc5df07
|
Abstract load over the evaluator type.
|
2018-03-01 11:33:32 -05:00 |
|
Rob Rix
|
c3ee31c4fc
|
Generalize the MonadFunctionAbstraction instance for Value over the evaluator type.
|
2018-03-01 11:32:14 -05:00 |
|
Rob Rix
|
77e79737fe
|
Abstract Evaluatable over the evaluator type.
|
2018-03-01 11:31:08 -05:00 |
|
Rob Rix
|
4d5969a077
|
Abstract evaluation under binders over the evaluator type.
|
2018-03-01 11:28:05 -05:00 |
|
Rob Rix
|
b25c9e6cd3
|
Move the AbstractValue constraint onto evaluation.
|
2018-03-01 11:18:53 -05:00 |
|
Rob Rix
|
06d24471f3
|
Abstract Addressable over the evaluator.
|
2018-03-01 11:14:30 -05:00 |
|
Rob Rix
|
590374884b
|
MonadEvaluator is a subclass of Monad.
|
2018-03-01 11:00:21 -05:00 |
|
Rob Rix
|
58b7c88b33
|
Define a MonadEvaluator typeclass abstracting the Evaluator type.
|
2018-03-01 10:59:55 -05:00 |
|
Rob Rix
|
cec9e584e2
|
🔥 some commented-out imports.
|
2018-03-01 10:16:20 -05:00 |
|
Rob Rix
|
9cedb403bd
|
🔥 redundant imports.
|
2018-03-01 10:03:45 -05:00 |
|
Rob Rix
|
8c51acec71
|
Reformat the context for the AbstractFunction instance for values.
|
2018-03-01 10:02:58 -05:00 |
|
Rob Rix
|
9192a35b06
|
Merge branch 'eval-effect' into algebraic-evaluation
|
2018-03-01 09:56:12 -05:00 |
|
Rob Rix
|
6245e30c1c
|
Revert "Abstract over the top-level analysis."
This reverts commit d6d2a3d23ce3de9a4c2578e105bf6a096443eb7d.
|
2018-03-01 09:41:42 -05:00 |
|