Rob Rix
|
fa8d0e4db6
|
🔥 the inlining of run.
|
2017-07-22 17:28:09 -04:00 |
|
Rob Rix
|
0ffb818898
|
Don’t bind the first assignment.
|
2017-07-22 17:27:08 -04:00 |
|
Rob Rix
|
acc1d683d1
|
Define runAssignment as a Kleisli composition.
|
2017-07-22 17:26:40 -04:00 |
|
Rob Rix
|
a1a3f3be79
|
Rename the first state so we don’t use it where we mean some later state.
|
2017-07-22 17:25:54 -04:00 |
|
Rob Rix
|
d2bde129da
|
Combine goMany and loop.
|
2017-07-22 17:25:39 -04:00 |
|
Rob Rix
|
6f954d4510
|
Define runMany as a worker/wrapper.
|
2017-07-22 17:11:26 -04:00 |
|
Rob Rix
|
2adf4ee765
|
Use Either’s MonadError instance to backtrack.
|
2017-07-22 16:59:38 -04:00 |
|
Rob Rix
|
6caaec8289
|
Spacing.
|
2017-07-22 16:58:09 -04:00 |
|
Rob Rix
|
2ee6332b66
|
🔥 projectNode.
|
2017-07-22 16:57:45 -04:00 |
|
Rob Rix
|
8b63e54f6d
|
🔥 an unnecessary fmap.
|
2017-07-22 16:56:21 -04:00 |
|
Rob Rix
|
4a0fb31ba1
|
Handle node errors in one place.
|
2017-07-22 16:55:43 -04:00 |
|
Rob Rix
|
c7d3def19f
|
🔥 choiceSymbols.
|
2017-07-22 16:53:46 -04:00 |
|
Rob Rix
|
15a6680848
|
Divide rule behaviours into at-end and at-node.
|
2017-07-22 16:53:18 -04:00 |
|
Rob Rix
|
d5799cff0d
|
Project the head node.
|
2017-07-22 16:36:21 -04:00 |
|
Rob Rix
|
770e367c9b
|
Tacit definition of choiceSymbols.
|
2017-07-22 16:33:59 -04:00 |
|
Rob Rix
|
ba0f28fce2
|
Only bind results explicitly once we need to destructure them.
|
2017-07-22 16:32:56 -04:00 |
|
Rob Rix
|
18ae76951b
|
De-golf children assignment.
|
2017-07-22 16:31:23 -04:00 |
|
Rob Rix
|
7675f348d2
|
Rename advanceState to advance.
|
2017-07-22 16:27:02 -04:00 |
|
Rob Rix
|
5fab039939
|
Only drop when there are choices.
|
2017-07-22 16:24:26 -04:00 |
|
Rob Rix
|
30fba30c28
|
Correct the sense of the predicate.
|
2017-07-22 16:20:16 -04:00 |
|
Rob Rix
|
32c03be782
|
Rename AssignmentState to State.
|
2017-07-22 16:13:42 -04:00 |
|
Rob Rix
|
b91f70ec6a
|
Simplify error construction.
|
2017-07-22 16:08:12 -04:00 |
|
Rob Rix
|
04fe451ca3
|
Swap the parameters to nodeError.
|
2017-07-22 16:05:55 -04:00 |
|
Rob Rix
|
a4a8e85bbb
|
Extract the computation of errors for a given node.
|
2017-07-22 16:05:02 -04:00 |
|
Rob Rix
|
0aa86a309f
|
Reformat Error.
|
2017-07-22 16:00:50 -04:00 |
|
Rob Rix
|
130b4a0d3e
|
Write the child chain as a Kleisli composition.
|
2017-07-22 15:55:30 -04:00 |
|
Rob Rix
|
2c98b31f73
|
Run child assignments as direct Monadic chain.
|
2017-07-22 15:52:37 -04:00 |
|
Rob Rix
|
09787f5e93
|
Combine the Error constructors.
|
2017-07-22 15:43:48 -04:00 |
|
Rob Rix
|
630d78ae2a
|
🔥 the Show1 instance for Error.
|
2017-07-22 15:41:56 -04:00 |
|
Rob Rix
|
1b3a8f1311
|
Simplify error construction.
|
2017-07-22 15:34:56 -04:00 |
|
Rob Rix
|
a04a05cf1a
|
Combine ErrorCause into Error.
|
2017-07-22 15:31:43 -04:00 |
|
Rob Rix
|
8f492b7a9a
|
Combine the error clauses.
|
2017-07-22 15:19:27 -04:00 |
|
Rob Rix
|
126e319b88
|
Bind the head node.
|
2017-07-22 15:07:31 -04:00 |
|
Rob Rix
|
fd27976ba6
|
🔥 the note re: nullability.
It really only made sense when we were matching stateNodes at the same time.
|
2017-07-22 15:04:42 -04:00 |
|
Rob Rix
|
6a80c9dae9
|
🔥 some unneccessary quantifiers.
|
2017-07-22 15:03:58 -04:00 |
|
Rob Rix
|
8062a7aad4
|
Spacing.
|
2017-07-22 15:02:17 -04:00 |
|
Rob Rix
|
1d8c4fdeea
|
Define a helper to project nodes.
|
2017-07-22 15:01:29 -04:00 |
|
Rob Rix
|
40313b598f
|
Simplify the chain for choices.
|
2017-07-22 14:56:19 -04:00 |
|
Rob Rix
|
f628d22aee
|
Match the head node with guard clauses.
|
2017-07-22 14:52:34 -04:00 |
|
Rob Rix
|
140b5cf49b
|
Simplify how the node is projected out.
|
2017-07-22 14:50:26 -04:00 |
|
Rob Rix
|
11e83f0413
|
Define the error cases with guard clauses.
|
2017-07-22 14:49:14 -04:00 |
|
Rob Rix
|
dc9bfe28d1
|
Combine the rules for Location assignments.
|
2017-07-22 14:41:58 -04:00 |
|
Rob Rix
|
e8afa8817e
|
Preserve backtracking errors via a setter.
|
2017-07-22 14:34:04 -04:00 |
|
Rob Rix
|
9bac600596
|
Define advanceState closed over the projection.
|
2017-07-22 14:27:46 -04:00 |
|
Rob Rix
|
8be255dfd7
|
Define dropAnonymous closed over the projection.
|
2017-07-22 14:24:43 -04:00 |
|
Rob Rix
|
8404b320b6
|
Define expectedSymbols with guard clauses.
|
2017-07-22 14:23:38 -04:00 |
|
Rob Rix
|
346d87b572
|
Tighten up the computation of the starting state.
|
2017-07-22 14:23:01 -04:00 |
|
Rob Rix
|
b97deff731
|
Tighten up how alternations are run.
|
2017-07-22 14:12:04 -04:00 |
|
Rob Rix
|
48cfac86f2
|
Tighten up how catching is run.
|
2017-07-22 14:10:56 -04:00 |
|
Rob Rix
|
fd20883532
|
📝 stateError.
|
2017-07-22 14:09:13 -04:00 |
|