Rob Rix
|
38abf6b339
|
Merge branch 'master' into abstract-term-construction-out-of-parsing
# Conflicts:
# src/Parser.hs
#
tools/semantic-git-diff/test/corpus/diff-summaries/javascript/switch-sta
tement.json
#
tools/semantic-git-diff/test/corpus/diff-summaries/javascript/throw-stat
ement.json
|
2016-09-08 09:52:01 -04:00 |
|
Rob Rix
|
cccd9e9cc6
|
Stub in a term constructor for C.
|
2016-09-07 15:10:49 -04:00 |
|
Rob Rix
|
64edd14b1d
|
Stub in a module for JS-specific stuff.
|
2016-09-07 11:50:41 -04:00 |
|
Rick Winfrey
|
b07d4d2cdf
|
Extract Arguments to its own module
|
2016-08-31 13:09:41 -05:00 |
|
Rob Rix
|
0ebb18da7e
|
Add cmark to our dependencies.
|
2016-08-29 12:51:44 -04:00 |
|
Timothy Clem
|
24cb9f8d94
|
No more os(darwin) specific options
|
2016-08-25 15:54:55 -07:00 |
|
joshvera
|
39757eca55
|
Add pgml=script/g++ to bench targets and -O2 on semantic-git-diff target
|
2016-08-19 16:31:19 -04:00 |
|
Rob Rix
|
2477a40b6c
|
Enable FlexibleContexts for the tests.
|
2016-08-11 12:29:17 -04:00 |
|
Rob Rix
|
47ea24e90a
|
Merge branch 'master' into precompute-p,q-grams
# Conflicts:
# test/CorpusSpec.hs
|
2016-08-10 10:24:07 -04:00 |
|
Rob Rix
|
b97b422cfb
|
Revert "Enable FlexibleContexts for the tests."
This reverts commit 1c0007137862d4c263d75225c7ff579c574c48b1.
|
2016-08-10 09:44:55 -04:00 |
|
Rob Rix
|
959f15198c
|
🔥 Data.Vector.Arbitrary.
|
2016-08-10 09:44:02 -04:00 |
|
Rob Rix
|
f0466c0c43
|
Enable FlexibleContexts for the tests.
|
2016-08-10 09:15:42 -04:00 |
|
joshvera
|
46b1a7385e
|
Include protolude for Unsafe in tests
|
2016-08-09 16:14:46 -04:00 |
|
Rob Rix
|
25f4d2e751
|
Merge branch 'master' into precompute-p,q-grams
# Conflicts:
# src/Diffing.hs
# src/Parser.hs
# src/TreeSitter.hs
|
2016-08-05 13:13:36 -04:00 |
|
Rob Rix
|
a06dd1dc1e
|
Move the Arbitrary instance over Vector into its own module.
|
2016-08-05 10:14:53 -04:00 |
|
Rob Rix
|
60c4effabe
|
Diffing annotates terms with their feature vectors.
|
2016-08-04 20:43:10 -04:00 |
|
Rob Rix
|
ec548b56d4
|
Sort the test dependencies alphabetically.
|
2016-08-04 20:42:39 -04:00 |
|
Rob Rix
|
9a14248c08
|
🔥 Operation.
|
2016-08-03 18:12:58 -04:00 |
|
joshvera
|
8b0f496b90
|
Merge remote-tracking branch 'origin/master' into error-syntax
|
2016-07-27 19:00:27 -04:00 |
|
joshvera
|
ae4142ad7c
|
Add SourceSpan module
|
2016-07-27 17:15:09 -04:00 |
|
Rob Rix
|
cfddd9ca75
|
Merge branch 'master' into sequenceable
|
2016-07-26 15:43:02 -04:00 |
|
Rob Rix
|
8f15a59282
|
Stub in a spec for the Mergeable stuff.
|
2016-07-26 03:56:52 -04:00 |
|
joshvera
|
1197d46d31
|
Remove megaparsec
|
2016-07-25 13:34:38 -04:00 |
|
Rob Rix
|
77969d5366
|
Merge branch 'master' into sequenceable
# Conflicts:
# src/Diff.hs
# src/Syntax.hs
|
2016-07-22 18:40:11 -04:00 |
|
Rob Rix
|
9ae7f52e8f
|
Rename Sequenceable to Mergeable.
|
2016-07-22 17:38:10 -04:00 |
|
Rob Rix
|
808f15d40e
|
Stub in a generic Sequenceable module.
|
2016-07-22 15:33:01 -04:00 |
|
Rob Rix
|
f53cf8f05e
|
Stub in a Sequenceable typeclass.
|
2016-07-22 15:28:47 -04:00 |
|
joshvera
|
485fc884a4
|
Merge branch 'syntax-redux' into property-tests
|
2016-07-22 14:39:54 -04:00 |
|
joshvera
|
70f9329f1a
|
Merge remote-tracking branch 'origin/master' into syntax-redux
|
2016-07-22 12:36:03 -04:00 |
|
joshvera
|
ad4d36f7fd
|
Add a CoArbitrary instance to Category
|
2016-07-17 11:18:31 -04:00 |
|
Rob Rix
|
631b557823
|
🔥 DiffOutput.hs.
|
2016-07-15 16:01:43 -04:00 |
|
joshvera
|
27c338331f
|
Merge remote-tracking branch 'origin/master' into syntax-redux
|
2016-07-14 15:22:46 -04:00 |
|
joshvera
|
453334d966
|
Use wl-pprint-text to pretty print diff summaries
|
2016-07-14 14:44:18 -04:00 |
|
joshvera
|
58ff433dd0
|
Merge remote-tracking branch 'origin/master' into pretty-print-summaries
|
2016-07-14 14:38:46 -04:00 |
|
joshvera
|
59426b86f6
|
Add megaparsec to pretty print summaries
|
2016-07-13 14:32:53 -04:00 |
|
joshvera
|
7169a51265
|
Use wl-pprint-text to pretty print diff summaries
|
2016-07-13 11:58:43 -04:00 |
|
Rob Rix
|
4f967e0e1a
|
🔥 Data.OrderedMap.
|
2016-07-12 23:27:20 -04:00 |
|
Rick Winfrey
|
177af03bd3
|
Merge branch 'master' into syntax-redux
|
2016-07-12 17:03:35 -05:00 |
|
Rob Rix
|
6c16a071bb
|
Stub in a generic align module.
|
2016-07-11 13:55:27 -04:00 |
|
Rob Rix
|
f97169b064
|
We no longer need syb.
|
2016-07-11 11:46:58 -04:00 |
|
Rob Rix
|
6c2948e317
|
Try to implement alignment over functors. Try, and fail miserably.
|
2016-07-08 17:59:54 -04:00 |
|
joshvera
|
1efd68d122
|
Merge remote-tracking branch 'origin/master' into syntax-redux
|
2016-07-06 16:22:25 -04:00 |
|
Rob Rix
|
4cfa993239
|
Move the Arbitrary gram functions into Data.RandomWalkSimilarity.
|
2016-07-05 09:18:53 -04:00 |
|
Rob Rix
|
28abcd1b38
|
Move Record’s Arbitrary instance into Data.Record.
|
2016-06-30 12:49:50 -04:00 |
|
Rob Rix
|
9611a27887
|
🔥 test/ArbitraryTerm.hs.
|
2016-06-27 15:03:04 -04:00 |
|
Rob Rix
|
b4107426de
|
Stub in a spec for Diff.
|
2016-06-27 13:12:06 -04:00 |
|
Rob Rix
|
5724d2cbb3
|
Use k-d trees to look up the nearest neighbour.
|
2016-06-24 11:10:18 -04:00 |
|
Rob Rix
|
b604ddd446
|
FlexibleContexts all the things.
|
2016-06-23 16:19:51 -04:00 |
|
Rob Rix
|
011623e028
|
Correct the spec module import.
|
2016-06-23 09:51:47 -04:00 |
|
Rob Rix
|
4a8b7631bb
|
Stub in a Data.Record.Arbitrary module.
|
2016-06-23 09:42:43 -04:00 |
|
Rob Rix
|
1170bfdcb2
|
Rename Data.Gram to Data.RandomWalkSimilarity.
|
2016-06-22 17:59:28 -04:00 |
|
Rob Rix
|
0bef12d722
|
Test that featureVector produces d-vectors.
|
2016-06-22 11:04:27 -04:00 |
|
Rob Rix
|
9a976869b2
|
Stub in a module for arbitrary grams.
|
2016-06-22 10:53:29 -04:00 |
|
Rob Rix
|
51392382ef
|
Stub in a spec for Data.Gram.
|
2016-06-22 10:41:13 -04:00 |
|
Rob Rix
|
226be486c8
|
Add a Random instance over Ratios.
|
2016-06-21 18:48:44 -04:00 |
|
Rob Rix
|
ce838de9b4
|
Bags are DLists.
|
2016-06-21 17:49:34 -04:00 |
|
Rob Rix
|
2c9ef943b8
|
Depend on hashable.
|
2016-06-21 17:24:18 -04:00 |
|
joshvera
|
0a574871c9
|
Merge remote-tracking branch 'origin/master' into syntax-redux
|
2016-06-21 17:08:40 -04:00 |
|
Rob Rix
|
f8988adf3b
|
Stub in a module for Grams.
|
2016-06-21 15:19:44 -04:00 |
|
Rob Rix
|
ba1fc277eb
|
Rework the constructors and eliminators a bit to not use tagged.
|
2016-06-16 16:41:43 -04:00 |
|
Rob Rix
|
d596c02e74
|
:=> and field are shorthand for Tagged.
|
2016-06-16 11:40:43 -04:00 |
|
Rob Rix
|
3809f3ee43
|
Stub in a Data.Record module.
|
2016-06-16 11:30:11 -04:00 |
|
Rick Winfrey
|
a79d5c5bd0
|
Merge remote-tracking branch 'origin/master' into syntax-redux
|
2016-06-07 16:50:11 -05:00 |
|
joshvera
|
f61f9675ae
|
Convert to function call
|
2016-06-06 14:56:28 -04:00 |
|
Rob Rix
|
29a725b125
|
Move ArbitraryDiff into semantic-diff proper.
|
2016-06-06 12:07:07 -04:00 |
|
Rob Rix
|
8780ea3f26
|
Move the Arbitrary instances for Join (,) and Join These into semantic-diff proper.
|
2016-06-06 11:50:45 -04:00 |
|
Rob Rix
|
4eb76ff3a3
|
Move the Arbitrary instance for Data.These into semantic-diff proper.
|
2016-06-06 11:46:30 -04:00 |
|
Rob Rix
|
378b577175
|
Move the Arbitrary instance for Patch into semantic-diff proper.
|
2016-06-06 11:43:38 -04:00 |
|
Rob Rix
|
a613fa0369
|
Merge branch 'push-benchmarks-to-graphite' into benchmark-alignment
|
2016-06-06 11:36:48 -04:00 |
|
Rob Rix
|
a571d9746d
|
Add RecordWildCards and FlexibleInstances to our default extensions.
|
2016-06-03 15:59:58 -04:00 |
|
Rob Rix
|
69fbaf8337
|
semantic-diff depends on QuickCheck.
|
2016-06-01 09:18:31 -04:00 |
|
Rob Rix
|
3ada142796
|
Stub in a module for arbitrary Terms.
|
2016-06-01 09:03:15 -04:00 |
|
Rob Rix
|
dadaa6b420
|
Add an Arbitrary instance for ArbitraryDiff.
|
2016-05-31 20:24:49 -04:00 |
|
Rob Rix
|
444bdb8c50
|
Depend on bifunctors & these.
|
2016-05-31 10:58:39 -04:00 |
|
Rob Rix
|
7a3cfd3425
|
Add a function to produce generative benchmarks.
|
2016-05-31 10:37:34 -04:00 |
|
Rob Rix
|
275751b0c5
|
Specify the default language.
|
2016-05-31 10:37:14 -04:00 |
|
Rob Rix
|
a7bdcaa7c2
|
Stub in a benchmark component.
|
2016-05-31 09:25:00 -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
|
2f761fc38b
|
Remove split dependency
|
2016-05-26 13:44:17 -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
|
adf82ee812
|
Add NoImplicitPrelude and protolude. Bump lts to 6.0
|
2016-05-26 11:46:20 -04:00 |
|
Rob Rix
|
567e47c5c9
|
The tests depend on mtl.
|
2016-05-21 00:07:35 -04:00 |
|
joshvera
|
3d7e6f833a
|
Add protolude package
|
2016-05-19 18:10:07 -04:00 |
|
joshvera
|
68948287f8
|
Add a summary renderer
|
2016-05-18 12:01:16 -04:00 |
|
joshvera
|
5a8aed6e51
|
map infos to DifInfos in diffSummary'
|
2016-05-17 17:34:27 -04:00 |
|
joshvera
|
927acafcbd
|
add DiffSummarySpec
|
2016-05-16 14:45:33 -04:00 |
|
joshvera
|
a5b838d458
|
Remove CofreeExtras
|
2016-05-10 17:50:37 -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
|
1914950bc1
|
Stub diffSummary'
|
2016-05-03 15:50:38 -04:00 |
|
joshvera
|
6c07d4dc55
|
WIP CofreeF
|
2016-05-03 12:17:38 -04:00 |
|
joshvera
|
658fd024ec
|
Add recursion-schemes and free
|
2016-04-26 17:31:05 -04:00 |
|
joshvera
|
33270bd65a
|
stub diffSummary
|
2016-04-25 11:46:10 -04:00 |
|
Rob Rix
|
82289984de
|
Revert "Depend on semigroupoids."
This reverts commit aee2715e87a9112ced62ef27ef74f7a1869f2456.
|
2016-04-22 11:39:21 -04:00 |
|
Rob Rix
|
f0dc234c85
|
Depend on semigroupoids.
|
2016-04-22 11:04:08 -04:00 |
|
Rob Rix
|
2ca1caaa98
|
Replace Data.Option with a dependency on semigroups.
|
2016-04-15 12:20:27 -04:00 |
|
Rob Rix
|
2f5f0ad55b
|
Revert "Add Alt and Plus instances over OrderedMap."
This reverts commit ac24ca8debc3674940532944d59ee4b390489cca.
|
2016-04-15 11:57:23 -04:00 |
|
Rob Rix
|
4515b03fc7
|
Add Alt and Plus instances over OrderedMap.
|
2016-04-15 11:26:51 -04:00 |
|
Rob Rix
|
025d91f6ad
|
🔥 Data.Copointed; use pointed instead.
|
2016-04-15 11:19:50 -04:00 |
|
Rob Rix
|
a61d847705
|
Replace Data.Bifunctor.These and Data.Align with the these package.
|
2016-04-14 22:00:00 -04:00 |
|
Rob Rix
|
b036fa27a3
|
🔥 Data.Coalescent.
|
2016-04-14 21:59:25 -04:00 |
|
Rob Rix
|
e4e3418a7a
|
🔥 Data.Adjoined.
|
2016-04-14 21:59:11 -04:00 |
|
Rob Rix
|
8fc7a094a5
|
🔥 Line.
|
2016-04-14 21:58:37 -04:00 |
|
Rob Rix
|
6829c6baab
|
🔥 Data.Adjoined.Spec.
|
2016-04-14 21:54:25 -04:00 |
|
Rob Rix
|
1972e20233
|
🔥 Data.Functor.Both.Spec.
|
2016-04-14 21:54:11 -04:00 |
|
Rob Rix
|
19cc23b51a
|
Merge branch 'master' into cofree-and-bifunctors-sitting-in-a-tree-a-l-i-g-n-edly
# Conflicts:
# src/Diff.hs
|
2016-03-30 20:20:50 -04:00 |
|
Rob Rix
|
75677fa8aa
|
Add a module for Info.
|
2016-03-30 17:12:39 -04:00 |
|
Rob Rix
|
745b695dd9
|
The tests depend on bifunctors.
|
2016-03-21 18:53:57 -04:00 |
|
Rob Rix
|
cd2e07bcf3
|
🔥 Data.Aligned.
|
2016-03-21 13:27:20 -04:00 |
|
Rob Rix
|
ac247fa315
|
Stub in a Data.Aligned module.
|
2016-03-18 10:41:55 -04:00 |
|
Rob Rix
|
33ef0d13dc
|
Depend on bifunctors.
|
2016-03-17 20:07:28 -04:00 |
|
Rob Rix
|
0129bffe6e
|
Stub in a spec for Both.
|
2016-03-15 10:40:35 -04:00 |
|
Rob Rix
|
c61b90d2b9
|
Revert "Stub the Join module back in."
This reverts commit c927af544cdea5dda46904fa79cadff7e60ea52f.
|
2016-03-14 20:44:32 -04:00 |
|
Rob Rix
|
7f83e07fe9
|
Stub the Join module back in.
|
2016-03-14 19:48:37 -04:00 |
|
Rob Rix
|
c48bd242d7
|
Turn DeriveFunctor on for the tests.
|
2016-03-11 09:14:46 -05:00 |
|
Rob Rix
|
4e1d4706ee
|
Stub in a Data.Adjoined spec module.
|
2016-03-11 09:06:03 -05:00 |
|
Rob Rix
|
b6d422eb5b
|
Revert "Revert "Stub in a Data.Bifunctor.These module.""
This reverts commit 2b5c242f70e141e00fdeadd378c2d6eae49fce22.
|
2016-03-10 10:46:32 -05:00 |
|
Rob Rix
|
ddd0adf2aa
|
Revert "Revert "Stub in a Data.Align module.""
This reverts commit 91ab52cef2217ae1a92eebb4d7d90bbcc1626565.
|
2016-03-10 10:45:29 -05:00 |
|
Rob Rix
|
7c88d9ff38
|
Stub in a Data.Coalescent module.
|
2016-03-10 09:41:57 -05:00 |
|
Rob Rix
|
29064a6d9d
|
Revert "🔥 Data.Adjoined."
This reverts commit 68dd849071a17f58d4bfe83ebc05b55ffc011ba5.
|
2016-03-10 03:27:00 -05:00 |
|
Rob Rix
|
086a3d53cb
|
🔥 Row.
|
2016-03-09 01:39:18 -05:00 |
|
Rob Rix
|
1d99e4f548
|
🔥 Data.Adjoined.
|
2016-03-08 10:24:27 -05:00 |
|
Rob Rix
|
6bd58e3007
|
Revert "Stub in a Data.Bifunctor.These module."
This reverts commit 2cb0cce8304de64ebca4b8106dc453bd66fe1c36.
|
2016-03-07 12:57:12 -05:00 |
|
Rob Rix
|
705b0757ed
|
Revert "Stub in a Data.Align module."
This reverts commit 7e2a1740f7c585cc1ac277c1cd92b333c7c68e34.
|
2016-03-07 12:57:03 -05:00 |
|
Rob Rix
|
fb24cc7241
|
Stub in a Data.Align module.
|
2016-03-07 09:33:09 -05:00 |
|
Rob Rix
|
d78b5e7a7a
|
Stub in a Data.Bifunctor.These module.
|
2016-03-07 09:28:09 -05:00 |
|
Rob Rix
|
2dde65d46e
|
Stub in a Data.Adjoined module.
|
2016-03-04 21:56:41 -05:00 |
|
Rob Rix
|
a8ca94bd49
|
Stub in a Data.Copointed module.
|
2016-03-02 23:08:28 -05:00 |
|
Rob Rix
|
e894d63a6c
|
Merge branch 'master' into forward-compatible-rendering
# Conflicts:
# src/DiffOutput.hs
# src/Renderer/Split.hs
# test/CorpusSpec.hs
|
2016-03-01 12:34:40 -05:00 |
|
Rob Rix
|
d92bab31fd
|
Generate the JSON with aeson instead.
|
2016-02-29 20:52:30 -05:00 |
|
Rob Rix
|
adf7b24bc7
|
🔥 Text.JSON, just use the json package.
|
2016-02-29 18:06:06 -05:00 |
|
Rob Rix
|
bc2db99978
|
Stub in a Text.JSON module.
|
2016-02-29 16:32:31 -05:00 |
|
Rob Rix
|
46b85eea05
|
Merge branch 'master' into forward-compatible-rendering
|
2016-02-29 14:11:14 -05:00 |
|
Rob Rix
|
75b7f9d58c
|
Revert "Don’t warn about orphans."
This reverts commit 18205b45d7cce5985265248f6c69f9c1932b057d.
|
2016-02-29 13:43:38 -05:00 |
|
Rob Rix
|
52b23a8e5c
|
Don’t warn about orphans.
This is for the orphan ToMarkup instance in Renderer.Split.
|
2016-02-29 13:38:14 -05:00 |
|
Rob Rix
|
0626228917
|
Data.Bifunctor.Join is actually Data.Functor.Both.
|
2016-02-28 21:29:59 -05:00 |
|
Rob Rix
|
d6fb451ebd
|
Rename SplitSpec to AlignmentSpec.
|
2016-02-28 14:05:19 -05:00 |
|
Rob Rix
|
e55cb8e24d
|
Stub in an Alignment module.
|
2016-02-28 13:55:19 -05:00 |
|
Rob Rix
|
5dc42ddcf3
|
Stub in a SplitDiff module.
|
2016-02-28 13:37:40 -05:00 |
|
Rob Rix
|
46e66bf639
|
Sort the library’s exposed modules.
|
2016-02-28 13:36:32 -05:00 |
|
Rob Rix
|
145defd1b9
|
Sort the dependencies in each cabal file.
|
2016-02-28 13:34:07 -05:00 |
|
Rob Rix
|
1ba036b495
|
Merge branch 'master' into forward-compatible-rendering
# Conflicts:
# src/DiffOutput.hs
# test/CorpusSpec.hs
# tools/semantic-difftool/src/Main.hs
|
2016-02-28 13:26:50 -05:00 |
|
Rob Rix
|
bcbb762ccf
|
Remove the library’s dependency on c-storable-deriving.
|
2016-02-27 19:38:19 -05:00 |
|
Rob Rix
|
7b038f821d
|
Merge branch 'master' into factor-git-integration-into-a-separate-package
# Conflicts:
# semantic-diff.cabal
|
2016-02-26 22:37:44 -05:00 |
|
Josh Vera
|
ca92f08159
|
Merge pull request #471 from github/remove-semigroups
Remove semigroups
|
2016-02-26 19:07:04 -07:00 |
|
joshvera
|
7cbe330be5
|
Merge remote-tracking branch 'origin/master' into factor-out-packages
|
2016-02-26 18:36:57 -07:00 |
|
Rob Rix
|
686c94d69f
|
Move the semantic-diff executable to a semantic-git-diff package.
|
2016-02-26 20:34:30 -05:00 |
|
Rob Rix
|
f25d2754f7
|
Remove semigroups.
|
2016-02-26 19:55:18 -05:00 |
|