1
1
mirror of https://github.com/github/semantic.git synced 2024-12-26 08:25:19 +03:00
Commit Graph

83 Commits

Author SHA1 Message Date
Rob Rix
ce500a822f Define zipTerms using galign. 2016-07-11 15:13:16 -04:00
Rob Rix
b1b9806e61 📝 alignCofreeWith’s parameters. 2016-07-11 14:41:59 -04:00
Rob Rix
c830c818f4 📝 alignCofreeWith. 2016-07-11 14:33:51 -04:00
Rob Rix
2870cdf1dd Add a function parameter contrasting two terms into e.g. a patch. 2016-07-11 14:33:05 -04:00
Rob Rix
b4c6d92301 Rename c to combined. 2016-07-11 14:29:57 -04:00
Rob Rix
d9c5411568 Rename contrast to compare. 2016-07-11 14:27:38 -04:00
Rob Rix
42f18e9b4f Use the getters instead of destructuring. 2016-07-11 14:03:54 -04:00
Rob Rix
26757185d9 Use a more efficient pattern of recursion. 2016-07-11 14:03:05 -04:00
Rob Rix
40df2f9576 Add an annotation-combining function to alignCofreeWith. 2016-07-11 14:01:45 -04:00
Rob Rix
e23fa323db Rename some type parameters for tidiness’ sake. 2016-07-11 14:00:36 -04:00
Rob Rix
921d0d9356 Clean up the language extensions for the Term module. 2016-07-11 13:59:27 -04:00
Rob Rix
d1219d04f2 🔥 a redundant import. 2016-07-11 13:58:28 -04:00
Rob Rix
a9577a2037 🔥 the hand-rolled alignSyntax' function. 2016-07-11 13:57:53 -04:00
Rob Rix
ee260949ea Move GAlign into its own module. 2016-07-11 13:57:11 -04:00
Rob Rix
119c2350d4 Use the Data.Align instances for generic alignment of lists and ordered maps. 2016-07-11 13:54:04 -04:00
Rob Rix
f1f542cc2c Add an instance for Syntax. 2016-07-11 12:21:40 -04:00
Rob Rix
796aa327f0 Tidy up the GAlign instance over sums. 2016-07-11 12:20:47 -04:00
Rob Rix
d9e5a633b8 🔥 galignDefault. 2016-07-11 12:20:09 -04:00
Rob Rix
2e15957f01 Just use the default galign definition. 2016-07-11 12:19:58 -04:00
Rob Rix
03871b56be Give a default signature and definition of galign. 2016-07-11 12:19:28 -04:00
Rob Rix
b7a1609845 Add a GAlign instance for OrderedMap. 2016-07-11 12:18:32 -04:00
Rob Rix
05a2266aca Implement alignment over compositions of functors. 2016-07-11 12:18:00 -04:00
Rob Rix
8b7bbc5195 Try defining GAlign over pairs. 2016-07-11 12:13:17 -04:00
Rob Rix
6b7f315987 Make generic alignment explicitly partial instead. 2016-07-11 11:57:46 -04:00
Rob Rix
fa88b23fdc Contrast sums. 2016-07-11 11:54:16 -04:00
Rob Rix
57cfaa3e36 GAlign implies Functor. 2016-07-11 11:54:11 -04:00
Rob Rix
bf98d23d8f The contrasting function takes functors. 2016-07-11 11:54:03 -04:00
Rob Rix
c597a8cfa6 Pass a contrasting function around. 2016-07-11 11:47:16 -04:00
Rob Rix
dd4c1d9fde Replace alignF with a typeclass for alignment. 2016-07-11 11:39:02 -04:00
Rob Rix
5ffecda63c Pretty sure that guard is redundant to the one in alignM. 2016-07-08 18:00:28 -04:00
Rob Rix
6c2948e317 Try to implement alignment over functors. Try, and fail miserably. 2016-07-08 17:59:54 -04:00
Rob Rix
15a0022152 The contrasting function must be polymorphic. 2016-07-08 14:04:16 -04:00
Rob Rix
f6ba2f8408 Implement a partial alignment function for Syntax. 2016-07-08 14:01:09 -04:00
Rob Rix
59bc42b731 Don’t attempt to align non-overlapping terms. 2016-07-08 14:00:07 -04:00
Rob Rix
032dcb047b Pass both the syntaxes to the helper function directly. 2016-07-08 13:57:25 -04:00
Rob Rix
9242d2fe7c Add an alignment function over Cofree f a. 2016-07-08 13:44:29 -04:00
Rob Rix
e914685790 Don’t warn of orphans so much. 2016-06-30 12:59:26 -04:00
Rob Rix
7802d4916c 🔥 FlexibleInstances & RecordWildCards pragmas. 2016-06-03 16:02:06 -04:00
Rob Rix
de6d7edec2 Merge branch 'master' into cofree-and-bifunctors-sitting-in-a-tree-a-l-i-g-n-edly
# Conflicts:
#	semantic-diff.cabal
#	src/Alignment.hs
#	src/Control/Comonad/Cofree.hs
#	src/Data/Adjoined.hs
#	src/Diffing.hs
#	src/Interpreter.hs
#	src/Prologue.hs
#	src/Renderer/JSON.hs
#	src/Renderer/Patch.hs
#	src/Renderer/Split.hs
#	src/SplitDiff.hs
#	src/Term.hs
#	test/AlignmentSpec.hs
#	test/ArbitraryTerm.hs
#	test/PatchOutputSpec.hs
2016-05-27 09:35:26 -04:00
Rob Rix
cfe15a5afa Merge branch 'master' into cofree-and-bifunctors-sitting-in-a-tree-a-l-i-g-n-edly
# Conflicts:
#	src/Alignment.hs
#	src/Control/Comonad/Cofree.hs
#	src/Data/Adjoined.hs
#	src/Data/Align.hs
#	src/Data/Bifunctor/These.hs
#	src/Data/Coalescent.hs
#	src/Data/Copointed.hs
#	src/Data/Functor/Both.hs
#	src/Data/Option.hs
#	src/Line.hs
#	src/Patch.hs
#	src/Range.hs
#	src/Renderer/JSON.hs
#	src/Renderer/Patch.hs
#	src/Renderer/Split.hs
#	src/SplitDiff.hs
#	stack.yaml
#	test/AlignmentSpec.hs
#	test/CorpusSpec.hs
#	test/Data/Adjoined/Spec.hs
#	test/Data/Functor/Both/Spec.hs
2016-05-26 15:25:45 -04:00
joshvera
9d9fbe3c37 🔥 annotate and unfix 2016-05-26 14:46:13 -04:00
joshvera
ebd5d20171 Remove duplicate imports 2016-05-26 14:04:27 -04:00
joshvera
473ec980b1 Merge remote-tracking branch 'origin/master' into diff-summaries 2016-05-26 13:40:54 -04:00
joshvera
8180b37285 Use Protolude via the Prologue module and add NoImplicitPrelude 2016-05-26 12:58:04 -04:00
joshvera
170110ee8e Fix up tests 2016-05-04 15:15:25 -04:00
joshvera
48c7498ce2 Define Term in terms of Cofree 2016-05-04 14:37:24 -04:00
joshvera
6c07d4dc55 WIP CofreeF 2016-05-03 12:17:38 -04:00
Rob Rix
e3ace6408c Merge branch 'master' into cofree-and-bifunctors-sitting-in-a-tree-a-l-i-g-n-edly
# Conflicts:
#	test/AlignmentSpec.hs
#	test/PatchOutputSpec.hs
2016-04-14 12:57:45 -04:00
Rob Rix
97b588d5e3 Correct the docs of termSize. 2016-04-11 15:06:53 -04:00
Rob Rix
0b4696062d Compute term sizes as node counts. 2016-04-11 13:54:46 -04:00