Rob Rix
|
13d6b313cb
|
Document how tokens are skipped.
|
2017-05-04 13:11:09 -04:00 |
|
Rob Rix
|
d62b6170e6
|
Document optional.
|
2017-05-04 13:04:54 -04:00 |
|
Rob Rix
|
64ada1c6c2
|
Document some/many repetitions.
|
2017-05-04 13:03:46 -04:00 |
|
Rob Rix
|
da158b4a12
|
Document committed choice.
|
2017-05-04 12:58:00 -04:00 |
|
Rob Rix
|
7467fabfa4
|
Document combining assignments with the various instances.
|
2017-05-04 12:25:05 -04:00 |
|
Rob Rix
|
a30769167c
|
Document 'pure' assignments.
|
2017-05-04 11:29:44 -04:00 |
|
Rob Rix
|
9644561a8d
|
Document the basic primitives.
|
2017-05-04 11:27:43 -04:00 |
|
Rob Rix
|
dde29370de
|
Simplify the initial discussion of Assignments.
|
2017-05-04 11:06:25 -04:00 |
|
Rob Rix
|
838262df2d
|
Clarify the assignment-context bit.
|
2017-05-04 11:04:42 -04:00 |
|
Rob Rix
|
aed82c030d
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-04 11:02:30 -04:00 |
|
Rob Rix
|
a656a94664
|
Merge branch 'master' into diffs-a-la-carte
|
2017-05-04 11:02:22 -04:00 |
|
Rob Rix
|
9d5b040c42
|
Merge remote-tracking branch 'origin/master' into assignment-best-practices
|
2017-05-04 11:01:31 -04:00 |
|
Rob Rix
|
68b813d51b
|
Merge branch 'master' into 🔥-split-renderer
|
2017-05-04 10:59:21 -04:00 |
|
Rob Rix
|
a14093bf06
|
Correct the usage for the -o flag.
|
2017-05-04 10:56:28 -04:00 |
|
Rob Rix
|
32a6901d38
|
📝 the module a bit.
|
2017-05-04 10:55:12 -04:00 |
|
Rob Rix
|
9c2b7dfbe0
|
🔥 Renderer.Split.
|
2017-05-04 10:10:45 -04:00 |
|
Rob Rix
|
d085b11789
|
🔥 the split diff renderer.
|
2017-05-04 10:09:29 -04:00 |
|
Rob Rix
|
d5e0cd5693
|
🔥 the split diff arguments constructor.
|
2017-05-04 10:09:19 -04:00 |
|
Rob Rix
|
f385a6e54f
|
🔥 the --split renderer flag.
|
2017-05-04 10:09:02 -04:00 |
|
Timothy Clem
|
31c01c0092
|
Give sExpressions output a trailing newline again
|
2017-05-03 14:11:37 -07:00 |
|
Timothy Clem
|
69b6c6b21e
|
Let reading from /dev/null throw - need emptySourceBlob for this case
|
2017-05-03 14:11:02 -07:00 |
|
Rob Rix
|
d10ca290b9
|
Use diffMaybe instead of maybeLinearly.
|
2017-05-03 16:58:43 -04:00 |
|
Rob Rix
|
45406c5c81
|
Define a combinator for diffing in Maybe.
|
2017-05-03 16:56:15 -04:00 |
|
Rob Rix
|
a0df4f8845
|
Skip wrapping in Maybe.
|
2017-05-03 16:52:56 -04:00 |
|
Rob Rix
|
8a2725f524
|
Merge branch 'master' into diffs-a-la-carte
|
2017-05-03 16:38:09 -04:00 |
|
Rob Rix
|
d524fa05bb
|
Define Align-based GAlign instances for [] and Maybe.
|
2017-05-03 16:24:05 -04:00 |
|
Timothy Clem
|
c9f69c32b5
|
++haskell-tree-sitter to use halt_on_error
|
2017-05-03 13:22:46 -07:00 |
|
Rob Rix
|
116e5b0e08
|
Derive GAlign instances for all of the à la carte syntax types.
|
2017-05-03 16:05:27 -04:00 |
|
Rob Rix
|
c189e786c5
|
Define a GAlign instance for Identity.
|
2017-05-03 16:00:13 -04:00 |
|
Rob Rix
|
1f6d044994
|
Define GAlign instances for Unions.
|
2017-05-03 15:58:27 -04:00 |
|
Rob Rix
|
ce50d2da71
|
🔥 the Functor context for GAlign.
|
2017-05-03 15:56:16 -04:00 |
|
Rob Rix
|
eb18e2ef6e
|
Move the GAlign instance for Syntax into Syntax’ module.
|
2017-05-03 15:45:07 -04:00 |
|
Rob Rix
|
028d760190
|
Revert "Reuse the canCompare parameter."
This reverts commit 2f4f50e8e41f64721f6e7cd887d22c16263b3e52.
|
2017-05-03 15:37:19 -04:00 |
|
Rob Rix
|
be3937cc42
|
Reuse the canCompare parameter.
|
2017-05-03 15:24:05 -04:00 |
|
Rob Rix
|
22e7e8ca3e
|
Generalize decompose over the general term-diffing algorithm computation.
|
2017-05-03 15:17:59 -04:00 |
|
Rob Rix
|
a212fc628d
|
s/cont/yield/.
|
2017-05-03 14:58:48 -04:00 |
|
Rob Rix
|
2e825ec90b
|
Generalize runAlgorithm and runAlgorithmSteps to arbitrary functors in Freer.
|
2017-05-03 14:54:41 -04:00 |
|
Rob Rix
|
744f8cfe2e
|
Generalize the algorithm running functions over arbitrary term/diff types.
|
2017-05-03 14:51:58 -04:00 |
|
Rob Rix
|
b7d5f03a1b
|
🔥 runAlgorithmStep.
|
2017-05-03 14:50:23 -04:00 |
|
Rob Rix
|
34807f26bb
|
runAlgorithmSteps is parameterized by the decomposition operation.
|
2017-05-03 14:50:10 -04:00 |
|
Rob Rix
|
2e2ff9d614
|
runAlgorithm is parameterized by the decomposition operation.
|
2017-05-03 14:45:46 -04:00 |
|
Rob Rix
|
77bdda7b7e
|
s/run/runAlgorithm/.
|
2017-05-03 14:38:11 -04:00 |
|
Rob Rix
|
cb7a5a7b57
|
runStep returns the continuation without wrapping in Either.
|
2017-05-03 14:35:54 -04:00 |
|
Rob Rix
|
459616e543
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-03 14:27:03 -04:00 |
|
Rob Rix
|
11ca3a902b
|
🔥 a redundant constraint.
|
2017-05-03 13:55:18 -04:00 |
|
Rob Rix
|
363d21b607
|
Generalize s-expression rendering to arbitrary Foldables.
|
2017-05-03 13:43:32 -04:00 |
|
Rob Rix
|
1d024aafc9
|
Assign regular = assignments.
|
2017-05-03 11:52:38 -04:00 |
|
Rob Rix
|
8cc0526b23
|
Move assignment out into a separate top-level binding.
|
2017-05-03 11:51:22 -04:00 |
|
Rob Rix
|
159cf5772b
|
Assign ^=.
|
2017-05-03 11:50:01 -04:00 |
|
Rob Rix
|
53fde0b91b
|
Assign <<=.
|
2017-05-03 11:49:16 -04:00 |
|
Rob Rix
|
64dc3c7ff4
|
Assign >>=.
|
2017-05-03 11:49:00 -04:00 |
|
Rob Rix
|
96fabf70d4
|
Assign %=.
|
2017-05-03 11:48:22 -04:00 |
|
Rob Rix
|
b2ae6515f6
|
Assign &=.
|
2017-05-03 11:47:36 -04:00 |
|
Rob Rix
|
05be6e2f98
|
Assign &&=.
|
2017-05-03 11:47:14 -04:00 |
|
Rob Rix
|
175ac88ac4
|
Reformat a bit.
|
2017-05-03 11:43:36 -04:00 |
|
Rob Rix
|
feb99c9d3a
|
Assign |=.
|
2017-05-03 11:42:35 -04:00 |
|
Rob Rix
|
d215d0b597
|
Assign ||=.
|
2017-05-03 11:41:17 -04:00 |
|
Rob Rix
|
4b01c83fe3
|
Define bitwise operator syntax.
|
2017-05-03 11:40:14 -04:00 |
|
Rob Rix
|
82d2a73cf2
|
Define the modulus operation.
|
2017-05-03 11:38:18 -04:00 |
|
Rob Rix
|
417b990d00
|
Represent boolean operations with a single type.
|
2017-05-03 11:37:43 -04:00 |
|
Rob Rix
|
3db7c5ff4f
|
Assign /=.
|
2017-05-03 11:35:36 -04:00 |
|
Rob Rix
|
7790ff6441
|
Represent arithmetic operations with a single type.
|
2017-05-03 11:35:00 -04:00 |
|
Rob Rix
|
f408214d85
|
Assign **=.
|
2017-05-03 11:31:36 -04:00 |
|
Rob Rix
|
6e51415cfb
|
Assign *=.
|
2017-05-03 11:28:47 -04:00 |
|
Rob Rix
|
3b54a4ebf3
|
Assign -=.
|
2017-05-03 11:27:03 -04:00 |
|
Rob Rix
|
b8bd18e742
|
Define binary subtraction syntax.
|
2017-05-03 11:26:53 -04:00 |
|
Rob Rix
|
2b9fb8552a
|
Only drop anonymous nodes for choices where all symbols are regular.
|
2017-05-03 11:15:54 -04:00 |
|
Rob Rix
|
927ec1b2dc
|
🔥 stateTypes.
|
2017-05-03 10:55:52 -04:00 |
|
Rob Rix
|
acb8e7d693
|
Drop non-Regular symbols.
|
2017-05-03 10:50:36 -04:00 |
|
Rob Rix
|
4c5a5b56c6
|
🔥 withTokens.
|
2017-05-03 10:50:22 -04:00 |
|
Rob Rix
|
2a841a672b
|
Don’t drop anonymous nodes for choices including anonymous symbols.
|
2017-05-03 10:50:11 -04:00 |
|
Rob Rix
|
56aee672a9
|
Merge branch 'master' into opt-in-anonymous-nodes
|
2017-05-03 10:41:36 -04:00 |
|
Rob Rix
|
1893d61eda
|
Assign a += b assignments as a = a + b.
|
2017-05-03 10:37:29 -04:00 |
|
Rob Rix
|
33cdb49619
|
Define a combinator to assign without dropping token nodes.
|
2017-05-03 10:13:23 -04:00 |
|
Rob Rix
|
ab1e7ac9e0
|
Give a list of symbol types to consider.
|
2017-05-03 10:03:02 -04:00 |
|
Rob Rix
|
3ff041adcd
|
Define a helper to construct starting states.
|
2017-05-03 09:36:35 -04:00 |
|
Rob Rix
|
ae9fc6ea4f
|
Add a section header for the instances.
|
2017-05-03 09:35:51 -04:00 |
|
Rob Rix
|
14c12b3582
|
📝s.
|
2017-05-02 15:21:29 -04:00 |
|
Rob Rix
|
cefd3e0a6a
|
Rename go to ifElsif.
|
2017-05-02 15:03:30 -04:00 |
|
Rob Rix
|
8a506e5efa
|
Define a convenience for parsing straight to a term, logging errors.
|
2017-05-02 14:55:05 -04:00 |
|
Rob Rix
|
496c009379
|
Don’t pass the source through.
|
2017-05-02 14:53:07 -04:00 |
|
Rob Rix
|
73d1b83737
|
Rename assignAll to assign, taking a single root node.
|
2017-05-02 12:07:24 -04:00 |
|
Rob Rix
|
dd2ee0a669
|
Use the leaf helper to assign symbols.
|
2017-05-02 11:33:51 -04:00 |
|
Rob Rix
|
137b26d203
|
Define addition expression syntax.
|
2017-05-02 11:31:37 -04:00 |
|
Rob Rix
|
2246580687
|
Define assignment syntax.
|
2017-05-02 11:26:02 -04:00 |
|
Rob Rix
|
492b8e895e
|
🔥 redundant parens.
|
2017-05-02 11:25:48 -04:00 |
|
Rob Rix
|
40b0ff3a7b
|
Derive an IsString instance for Source.
|
2017-05-02 09:37:02 -04:00 |
|
Rob Rix
|
5ddd0995d0
|
Sort imports.
|
2017-05-02 09:35:42 -04:00 |
|
Rob Rix
|
0b96eb7c0f
|
Assign symbol literals.
|
2017-05-01 17:22:35 -04:00 |
|
Rob Rix
|
d025774908
|
Rename the SymbolLiteral constructor to Symbol.
|
2017-05-01 17:20:36 -04:00 |
|
Rob Rix
|
19c0abc218
|
Move the control flow modifiers into the normal variations.
|
2017-05-01 17:15:25 -04:00 |
|
Rob Rix
|
0519f658ea
|
Note some more literals.
|
2017-05-01 17:07:51 -04:00 |
|
Rob Rix
|
366a77ade4
|
Note a potential direction for numeric literals.
|
2017-05-01 17:06:38 -04:00 |
|
Rob Rix
|
ea2ccec784
|
Note that we don’t differentiate between line/block comments yet.
|
2017-05-01 16:59:04 -04:00 |
|
Rob Rix
|
051e87a3b2
|
Note that redo/retry aren’t yet handled.
|
2017-05-01 16:54:30 -04:00 |
|
Rob Rix
|
5881bae111
|
Note that we don’t discriminate between .. and ... yet.
|
2017-05-01 16:50:41 -04:00 |
|
Rob Rix
|
87f779af46
|
Assign range literals.
|
2017-05-01 16:50:00 -04:00 |
|
Rob Rix
|
202f31fa96
|
Assign for each bindings as identifiers.
|
2017-05-01 16:47:11 -04:00 |
|
Rob Rix
|
ae56675e3b
|
Assign for statements.
|
2017-05-01 16:44:52 -04:00 |
|
Rob Rix
|
20109d2705
|
Assign until modifiers.
|
2017-05-01 16:38:35 -04:00 |
|
Rob Rix
|
8aad196202
|
Assign until statements.
|
2017-05-01 16:37:13 -04:00 |
|
Rob Rix
|
5ab78c37b9
|
Assign while modifiers.
|
2017-05-01 15:59:08 -04:00 |
|
Rob Rix
|
173c0ecef6
|
Assign while statements.
|
2017-05-01 15:57:09 -04:00 |
|
Rob Rix
|
90b07663ed
|
Avoid producing extra errors when we have one already.
|
2017-05-01 15:53:00 -04:00 |
|
Rob Rix
|
b1ef673d86
|
Errors point at the start of the current node where possible.
|
2017-05-01 11:21:07 -04:00 |
|
Rob Rix
|
f709375805
|
Unpack the actual symbol explicitly.
|
2017-05-01 11:19:30 -04:00 |
|
Rob Rix
|
50758e0f7e
|
Number the lines in the error message output.
|
2017-05-01 11:16:08 -04:00 |
|
Rob Rix
|
1dabf3c9d3
|
Show up to three lines of context.
|
2017-05-01 11:04:49 -04:00 |
|
Rob Rix
|
91e9e59488
|
📝 showError.
|
2017-05-01 10:52:59 -04:00 |
|
Rob Rix
|
c0dd99a5a4
|
Pull the context into the where clause.
|
2017-05-01 10:52:29 -04:00 |
|
Rob Rix
|
e33da12d1b
|
Show the source of the error with a clang-style error message.
|
2017-05-01 10:51:12 -04:00 |
|
Rob Rix
|
434adf3eca
|
Show the expectation with a helper.
|
2017-05-01 10:33:21 -04:00 |
|
Rob Rix
|
5662b9cead
|
Define a function to show an Error.
|
2017-05-01 10:32:25 -04:00 |
|
Rob Rix
|
9593416367
|
Define a helper to show a comma-separated list of symbols.
Complications due to the Oxford comma.
|
2017-05-01 10:32:07 -04:00 |
|
Rob Rix
|
c1ac705f54
|
Define a helper to show a SourcePos.
|
2017-05-01 10:31:46 -04:00 |
|
Rob Rix
|
7fcd50b512
|
Merge branch 'master' into better-error-reporting-for-repetitions
|
2017-05-01 10:06:01 -04:00 |
|
Rob Rix
|
e9385c99e6
|
🔥 indexing.
|
2017-05-01 09:52:34 -04:00 |
|
Rob Rix
|
a7574b685a
|
🔥 the --debug flag.
|
2017-05-01 09:51:40 -04:00 |
|
Rob Rix
|
0bf52e3dde
|
Result has field selectors.
|
2017-04-28 15:54:34 -04:00 |
|
Rob Rix
|
8872a7ec6a
|
Errors record the symbol of the current node (if any).
|
2017-04-28 15:49:00 -04:00 |
|
Rob Rix
|
0168773814
|
Results hold errors instead of text.
|
2017-04-28 15:45:13 -04:00 |
|
Rob Rix
|
3d1e74bf4e
|
Define an Error datatype.
|
2017-04-28 15:34:18 -04:00 |
|
Rob Rix
|
250d095598
|
Result only has one case.
|
2017-04-28 15:31:23 -04:00 |
|
Rob Rix
|
a988d54ed6
|
Propagate errors from alternations.
|
2017-04-28 15:26:19 -04:00 |
|
Rob Rix
|
eb089bb571
|
Successful results can hold errors.
|
2017-04-28 15:24:42 -04:00 |
|
Rob Rix
|
ec8be238d1
|
Children assignments continue after the last child assignment.
|
2017-04-28 15:19:55 -04:00 |
|
Rob Rix
|
ca0d4328ff
|
Return the final state from assignAllFrom.
|
2017-04-28 15:18:33 -04:00 |
|
Rob Rix
|
743935b098
|
Include all nodes in indices.
|
2017-04-28 14:35:04 -04:00 |
|
Rob Rix
|
da22bee49e
|
Group SourceSpan fields together.
|
2017-04-28 11:35:50 -04:00 |
|
Rob Rix
|
f0f4ca393c
|
Merge branch 'master' into simplified-json-rendering-path
|
2017-04-28 09:51:07 -04:00 |
|
Rob Rix
|
285fb8f3a7
|
🔥 the unused ToJSON instances for Category and Range.
|
2017-04-28 09:25:12 -04:00 |
|
Rob Rix
|
026f855f0b
|
Move indexing out of the JSON renderer.
|
2017-04-27 19:42:55 -04:00 |
|
Rob Rix
|
4334e24aa4
|
Replace the indexing renderer with an indexing operation.
|
2017-04-27 19:40:54 -04:00 |
|
Rob Rix
|
6ed683f9be
|
🔥 jsonParseTree.
|
2017-04-27 19:38:18 -04:00 |
|
Rob Rix
|
4975dc61fe
|
Move decoration of terms out of the JSON renderer.
|
2017-04-27 19:36:35 -04:00 |
|
Rob Rix
|
013d998ef3
|
Extract a common handler for path-annotated rendering.
|
2017-04-27 19:27:03 -04:00 |
|
Rob Rix
|
66d611b460
|
Handle debug rendering for indices.
|
2017-04-27 19:24:41 -04:00 |
|
Rob Rix
|
c014c75b0e
|
Handle debug rendering for parse trees.
|
2017-04-27 19:23:31 -04:00 |
|
Rob Rix
|
9944b32d9f
|
Define a ToJSONFields instance for SourceText.
|
2017-04-27 19:22:22 -04:00 |
|
Rob Rix
|
59735e5dac
|
Don’t pass the debug flags to the renderers.
|
2017-04-27 19:13:18 -04:00 |
|
Rob Rix
|
5267ff4bb5
|
🔥 redundant parens.
|
2017-04-27 19:13:06 -04:00 |
|
Rob Rix
|
4394c2e833
|
🔥 the ToJSON instances for Data.Record.
|
2017-04-27 18:56:53 -04:00 |
|
Rob Rix
|
63b30ac1a3
|
Render parse trees/indices’ records to JSON.
|
2017-04-27 18:56:41 -04:00 |
|
Rob Rix
|
862fb3654b
|
Define a ToJSONFields instance for SourceSpan.
|
2017-04-27 18:51:41 -04:00 |
|
Rob Rix
|
70dd381f26
|
Simplify the ToJSONFields instance for Syntax.
|
2017-04-27 18:28:52 -04:00 |
|
Rob Rix
|
fed06ff0e1
|
Define ToJSONFields instances for Free & FreeF.
|
2017-04-27 18:23:10 -04:00 |
|
Rob Rix
|
3bf4f63e0c
|
Define a ToJSONFields instance for CofreeF.
|
2017-04-27 18:17:05 -04:00 |
|
Rob Rix
|
607d4f0398
|
Define a ToJSONFields instance for SplitPatch.
|
2017-04-27 18:10:31 -04:00 |
|
Rob Rix
|
1520fb0c2b
|
Replace syntaxToTermField with a ToJSONFields instance.
|
2017-04-27 18:10:12 -04:00 |
|
Rob Rix
|
43a5580bf5
|
Define a ToJSONFields instance for Terms.
|
2017-04-27 18:05:08 -04:00 |
|
Rob Rix
|
5afd5b8fa6
|
Distribute ToJSONFields through Maybe.
|
2017-04-27 17:56:24 -04:00 |
|
Rob Rix
|
5beff62cbc
|
Define ToJSONFields instances for Range and Category.
|
2017-04-27 17:53:36 -04:00 |
|
Rob Rix
|
adf868e5c8
|
Add a class to produce JSON fields for a type.
|
2017-04-27 17:49:37 -04:00 |
|
Rob Rix
|
17d413d267
|
Get all the fields uniformly.
|
2017-04-27 16:58:39 -04:00 |
|
Rob Rix
|
a5a86b33ea
|
Don’t pass the syntax around.
|
2017-04-27 16:58:13 -04:00 |
|
Rob Rix
|
96d2ccf92e
|
Decorate the term with the identifier algebraically.
|
2017-04-27 16:57:47 -04:00 |
|
Rob Rix
|
4abace2490
|
🔥 an unnecessary Functor constraint.
|
2017-04-27 16:47:08 -04:00 |
|
Rob Rix
|
f0b89c508c
|
🔥 parseDecorator.
|
2017-04-27 16:21:06 -04:00 |
|
Rob Rix
|
9dac0260e3
|
🔥 Identifier.
|
2017-04-27 16:18:11 -04:00 |
|
Rob Rix
|
d1b088eda5
|
Work around the lack of Show1 for IntMap in lts.
|
2017-04-26 18:39:39 -04:00 |
|
Rob Rix
|
d6b7e408e3
|
Don’t add a newline after the caret.
|
2017-04-26 15:27:30 -04:00 |
|
Rob Rix
|
f991988eea
|
Show the source of errors.
|
2017-04-26 14:54:29 -04:00 |
|
Rob Rix
|
d9d7f98921
|
Consolidate error reporting.
|
2017-04-26 14:37:07 -04:00 |
|
Rob Rix
|
dfab45dc65
|
Tidy up handling of Empty rules.
|
2017-04-26 13:50:45 -04:00 |
|
Rob Rix
|
59be638d70
|
🔥 the unlawful Monad instance for Result.
|
2017-04-26 13:40:03 -04:00 |
|
Rob Rix
|
52aa3800b7
|
Don’t use Result’s Monad instance for Children rules.
|
2017-04-26 13:39:42 -04:00 |
|
Rob Rix
|
d2da6e1ad7
|
Move the Alt rule down to reflect constructor order.
|
2017-04-26 13:37:48 -04:00 |
|
Rob Rix
|
89b30a5124
|
Pull the Choose case up a level.
|
2017-04-26 13:36:57 -04:00 |
|
Rob Rix
|
095e279380
|
Pull the Children case up a level.
|
2017-04-26 13:35:21 -04:00 |
|
Rob Rix
|
a6b5fa0634
|
Pull the Source case up a level.
|
2017-04-26 13:33:52 -04:00 |
|
Rob Rix
|
f781118abb
|
Move the location at end case up.
|
2017-04-26 13:32:24 -04:00 |
|
Rob Rix
|
2db005505e
|
Pull the Location case up a level.
|
2017-04-26 13:31:26 -04:00 |
|
Rob Rix
|
3de156447f
|
Match against the nodes.
|
2017-04-26 13:30:07 -04:00 |
|
Rob Rix
|
e9bff3be5a
|
Use the where clause’s binding for the source.
|
2017-04-26 13:28:34 -04:00 |
|
Rob Rix
|
4103936ca2
|
Use the where clause’s binding for the offset.
|
2017-04-26 13:28:04 -04:00 |
|
Rob Rix
|
b392c9d6b7
|
Bind the post-drop state in the where clause.
|
2017-04-26 13:24:04 -04:00 |
|
Rob Rix
|
a430b444f5
|
Pull the runAssignment iterator into the where clause.
|
2017-04-26 13:23:07 -04:00 |
|
Rob Rix
|
e67f5a9398
|
Guard terms with symbols.
|
2017-04-26 13:19:10 -04:00 |
|
Rob Rix
|
296717777d
|
Rearrange leaf to put the fmap first.
|
2017-04-26 13:18:40 -04:00 |
|
Rob Rix
|
b9027441e2
|
Use the leaf combinator to assign constants and identifiers.
|
2017-04-26 12:37:13 -04:00 |
|
Rob Rix
|
34e945d1fa
|
Use the leaf combinator to assign literals & comments.
|
2017-04-26 12:34:34 -04:00 |
|
Rob Rix
|
620b1ebd49
|
Flip leaf’s argument order.
|
2017-04-26 12:33:51 -04:00 |
|
Rob Rix
|
860138fe19
|
🔥 an extra space.
|
2017-04-26 12:33:37 -04:00 |
|
Rob Rix
|
129d962041
|
Add a leaf combinator.
|
2017-04-26 12:31:00 -04:00 |
|
Rob Rix
|
c2df871607
|
Replace Symbol with a unary Choose.
|
2017-04-26 12:17:43 -04:00 |
|
Rob Rix
|
d583b3cfcc
|
Prevent forgetting to shadow the initial state.
|
2017-04-26 12:11:03 -04:00 |
|
Rob Rix
|
677031daaa
|
Choices’ errors note the choice.
|
2017-04-26 12:07:33 -04:00 |
|
Rob Rix
|
77fe6aff31
|
empty is the left- and right-identity of <|>.
|
2017-04-26 12:05:49 -04:00 |
|
Rob Rix
|
ffe7b2ff66
|
Handle alternations of choices on both sides.
|
2017-04-26 12:04:34 -04:00 |
|
Rob Rix
|
38a92b7eda
|
Handle alternations of choices on the right.
|
2017-04-26 12:00:51 -04:00 |
|
Rob Rix
|
c85081ea6b
|
Show the symbol when choice fails.
|
2017-04-26 11:58:03 -04:00 |
|
Rob Rix
|
ffbca016db
|
Avoid revisiting anonymous nodes.
|
2017-04-26 11:47:53 -04:00 |
|
Rob Rix
|
d57df3f5fb
|
Show a better error for symbol rules.
|
2017-04-26 11:44:53 -04:00 |
|
Rob Rix
|
61b3e3c71f
|
Show a better error for symbol rules at end of input.
|
2017-04-26 11:40:59 -04:00 |
|
Rob Rix
|
6010bcb439
|
Show a better error for committed choice at end of input.
|
2017-04-26 11:39:32 -04:00 |
|
Rob Rix
|
b7d84470fb
|
Extract how we show choices into the where clause.
|
2017-04-26 11:37:00 -04:00 |
|
Rob Rix
|
b7899248d5
|
🔥 a redundant FIXME.
|
2017-04-26 11:34:43 -04:00 |
|
Rob Rix
|
2154e4a4ad
|
Construct committed choices using the Alternative interface.
|
2017-04-26 11:29:24 -04:00 |
|
Rob Rix
|
447412be86
|
Define committed choice as a map of alternatives.
|
2017-04-26 11:29:13 -04:00 |
|
Rob Rix
|
122558da3b
|
Stub in a combinator for committed choice.
|
2017-04-26 10:44:06 -04:00 |
|
Rob Rix
|
1fe76ee24c
|
Show the rest of assignments following Symbol rules.
|
2017-04-26 09:33:36 -04:00 |
|
Rob Rix
|
49f5e007da
|
🔥 Get assignment.
|
2017-04-25 15:09:41 -04:00 |
|
Rob Rix
|
7be5f34a38
|
🔥 range/sourceSpan.
|
2017-04-25 15:09:34 -04:00 |
|
Rob Rix
|
71515d73ae
|
Reintroduce Symbol assignment.
|
2017-04-25 15:08:23 -04:00 |
|
Rob Rix
|
335cb3194f
|
🔥 State assignment.
|
2017-04-25 15:05:04 -04:00 |
|
Rob Rix
|
d5797eba16
|
Define location assignment.
|
2017-04-25 15:04:08 -04:00 |
|
Rob Rix
|
c2607ffc4c
|
📝 Union’s constructors.
|
2017-04-25 13:53:18 -04:00 |
|
Rob Rix
|
03c57f2ef4
|
Merge branch 'master' into a-la-carte-folds
|
2017-04-25 12:47:47 -04:00 |
|
Rob Rix
|
8e2c1ffd5f
|
Correct the docs of identifierAlg.
|
2017-04-25 12:39:05 -04:00 |
|
Rob Rix
|
4644bcc2ef
|
Use Traversable as shorthand for Functor + Foldable.
This is not generally a good idea, but we strictly control these unions & syntax types, and it’s hard to imagine non-`Traversable` syntax.
|
2017-04-25 12:35:49 -04:00 |
|
Rob Rix
|
b6723c56f2
|
Panic! Our system.
|
2017-04-25 12:33:41 -04:00 |
|
Rob Rix
|
0db2c73a1e
|
Replace the identifiable algebra with an identifier algebra.
|
2017-04-25 12:30:36 -04:00 |
|
Rob Rix
|
69bbc13da3
|
Methods must be part of the syntax.
|
2017-04-25 12:27:42 -04:00 |
|
Rob Rix
|
30e72f3344
|
Methods are declarations, not statements.
|
2017-04-25 12:27:27 -04:00 |
|
Rob Rix
|
00200d7822
|
📝 some cases cyclomaticComplexityAlg doesn’t handle.
|
2017-04-25 12:17:17 -04:00 |
|
Rob Rix
|
a00ff68f32
|
Control exits methods at least once.
|
2017-04-25 12:15:28 -04:00 |
|
Rob Rix
|
390297aa56
|
📝 cyclomaticComplexityAlg.
|
2017-04-25 12:13:33 -04:00 |
|
Rob Rix
|
91366b0ba4
|
📝 CyclomaticComplexity.
|
2017-04-25 12:11:57 -04:00 |
|
Rob Rix
|
42d8b42f60
|
Merge branch 'a-la-carte-folds' of https://github.com/github/semantic-diff into a-la-carte-folds
|
2017-04-25 12:10:56 -04:00 |
|
Rob Rix
|
7bf60eb2ff
|
🔥 CVAlgebra handling.
We run the risk of making paramorphisms quadratic if we use histomorphisms to decorate, so we compromise on the added flexibility.
|
2017-04-25 12:10:48 -04:00 |
|
Rob Rix
|
2b703d1f31
|
Generalize decoratorWithAlgebra to take an R-algebra.
|
2017-04-25 12:09:10 -04:00 |
|
Timothy Clem
|
975304097c
|
Remove TODO and leave readFile behavior alone for now
|
2017-04-25 09:07:51 -07:00 |
|
Timothy Clem
|
6be9b9c3cd
|
🔥 concurrently
|
2017-04-25 09:05:48 -07:00 |
|
Timothy Clem
|
12948181c5
|
Merge remote-tracking branch 'origin/master' into clean-parse-and-diff-interface
|
2017-04-25 09:02:41 -07:00 |
|
Rob Rix
|
68e5042155
|
Merge branch 'master' into a-la-carte-folds
|
2017-04-25 10:55:26 -04:00 |
|
Rob Rix
|
6c38ec2b77
|
Correct the deprecation pragma.
|
2017-04-24 19:16:50 -04:00 |
|
Rob Rix
|
22ac1e3441
|
Add a deprecation notice to rToCV.
|
2017-04-24 18:42:35 -04:00 |
|
Rob Rix
|
7e21c167e1
|
Define an adaptor from F-algebras to CV-algebras.
|
2017-04-24 18:35:22 -04:00 |
|
Rob Rix
|
22be6c30f0
|
Factor Base out of the algebra type synonyms to avoid ambiguity.
|
2017-04-24 18:34:28 -04:00 |
|
Rob Rix
|
5b32f9d1b6
|
Note the awful complexity of rToCV.
|
2017-04-24 16:09:49 -04:00 |
|
Rob Rix
|
440cc2e792
|
📝 rToCV.
|
2017-04-24 16:00:06 -04:00 |
|
Rob Rix
|
4ac68417a2
|
Define the promotion of R-algebras into CV-algebras.
|
2017-04-24 15:58:29 -04:00 |
|
Rob Rix
|
bee4b4b06e
|
Define a type synonym for course-of-value algebras.
|
2017-04-24 15:55:09 -04:00 |
|
joshvera
|
7395e88ab0
|
Remove Data.RandomWalkSimilarity
|
2017-04-24 15:53:11 -04:00 |
|
Rob Rix
|
bc3fc4b4af
|
📝 fToR.
|
2017-04-24 15:46:51 -04:00 |
|
Rob Rix
|
d6cb7890b9
|
Define a function to promote F-algebras into R-algebras.
|
2017-04-24 15:45:50 -04:00 |
|
Rob Rix
|
953034ccb3
|
Define FAlgebra in terms of the Base of some type.
|
2017-04-24 15:44:46 -04:00 |
|
Rob Rix
|
c53076b071
|
Replace identifiable with its R-algebra.
|
2017-04-24 15:43:29 -04:00 |
|
Rob Rix
|
d429d77b15
|
Define a type synonym for R-algebras.
|
2017-04-24 15:43:22 -04:00 |
|
Rob Rix
|
fa520d6089
|
Move the definition of FAlgebra up.
|
2017-04-24 15:41:17 -04:00 |
|
Rob Rix
|
82a40d19ff
|
cyclomaticComplexityAlg is an F-algebra.
|
2017-04-24 15:40:31 -04:00 |
|
Rob Rix
|
46c044d448
|
Replace cyclomaticComplexity with its algebra.
|
2017-04-24 15:39:46 -04:00 |
|
Rob Rix
|
1e40f9b823
|
📝 decoratorWithAlgebra’s parameters.
|
2017-04-24 15:38:34 -04:00 |
|
Rob Rix
|
292969a5df
|
Reformat decoratorWithAlgebra’s signature.
|
2017-04-24 15:38:22 -04:00 |
|
Rob Rix
|
0a6555351b
|
📝 decoratorWithAlgebra.
|
2017-04-24 15:35:47 -04:00 |
|
Rob Rix
|
5201cb3f46
|
📝 FAlgebra.
|
2017-04-24 15:35:19 -04:00 |
|
Rob Rix
|
07c13859e2
|
Define a function lifting an algebra into a decorator.
|
2017-04-24 15:34:28 -04:00 |
|
Rob Rix
|
8b7d416164
|
Simplify the cyclomatic complexity computation to just the value.
|
2017-04-24 15:28:21 -04:00 |
|
Rob Rix
|
c4393ace0b
|
Define a cyclomatic complexity decorator.
|
2017-04-24 15:23:21 -04:00 |
|
Rob Rix
|
90737f6e5f
|
Generalize identifiable over the union.
|
2017-04-24 15:07:19 -04:00 |
|