Rob Rix
|
9ece0af975
|
Bound depth by the cube root of the size parameter, and length by the square root.
|
2015-12-11 15:41:35 -05:00 |
|
Rob Rix
|
d9bb395f2c
|
Remove the Arbitrary instance for Syntax.
|
2015-12-11 15:03:30 -05:00 |
|
Rob Rix
|
2646ebf4ae
|
We need this import for liftM.
|
2015-12-11 15:03:19 -05:00 |
|
Rob Rix
|
77c9970f25
|
Don’t bind a variable for n .
|
2015-12-11 15:03:03 -05:00 |
|
Rob Rix
|
3efa6e6ff4
|
Recur into arbitrary , and produce arbitrary Keyed nodes.
|
2015-12-11 15:02:29 -05:00 |
|
Rob Rix
|
76f78234aa
|
Define shrink by case analysis.
|
2015-12-11 15:01:44 -05:00 |
|
Rob Rix
|
2e97bf44fc
|
Generate arbitrary Fixed terms with bounds &c.
|
2015-12-11 14:40:29 -05:00 |
|
Rob Rix
|
c4326d54a0
|
Composition 🎉
|
2015-12-11 14:39:56 -05:00 |
|
Rob Rix
|
2764c34b8d
|
Generate arbitrary terms using frequency & sized bounds.
|
2015-12-11 14:38:57 -05:00 |
|
Rob Rix
|
046c3d1813
|
Try to simplify syntax shrinking in terms.
|
2015-12-11 14:38:52 -05:00 |
|
Rob Rix
|
ed929f07a0
|
Bind in the opposite direction.
|
2015-12-11 14:17:04 -05:00 |
|
Rob Rix
|
02c19d1d93
|
Shrink Keyed syntax values to subsequences.
|
2015-12-11 14:14:58 -05:00 |
|
Rob Rix
|
b643e9ce5a
|
Shrink indexed/fixed nodes to subsequences.
|
2015-12-11 14:07:31 -05:00 |
|
Rob Rix
|
68bf2cecfc
|
Add an Arbitrary instance for Syntax.
|
2015-12-11 14:05:59 -05:00 |
|
Rob Rix
|
913d484a67
|
Hide Fixed .
|
2015-12-11 14:05:46 -05:00 |
|
Rob Rix
|
46dfff2b7c
|
Derive the genericity of ArbitraryTerm.
|
2015-12-11 13:37:42 -05:00 |
|
Rob Rix
|
07060e8137
|
DeriveGeneric.
|
2015-12-11 13:37:33 -05:00 |
|
Rob Rix
|
7e185f8f7a
|
Merge branch 'master' into quickcheck
|
2015-12-11 13:35:48 -05:00 |
|
Josh Vera
|
75d76afeb5
|
Merge pull request #313 from github/split-rendering-of-fixed-nodes
Split rendering of fixed nodes
|
2015-12-11 12:09:43 -05:00 |
|
Rob Rix
|
aadd8c7f30
|
Merge branch 'master' into split-rendering-of-fixed-nodes
# Conflicts:
# src/Split.hs
|
2015-12-11 11:37:20 -05:00 |
|
Rob Rix
|
1cb41b814a
|
Merge pull request #316 from github/add-script/profile
Add script/profile
|
2015-12-11 11:33:43 -05:00 |
|
Rob Rix
|
e1ec67968b
|
Merge pull request #315 from github/show-line-numbers
Show line numbers in diffs
|
2015-12-11 11:29:58 -05:00 |
|
Rob Rix
|
f983ec0cc3
|
Shrink Keyed subterms recursively.
|
2015-12-11 11:19:13 -05:00 |
|
Rob Rix
|
e1161b46db
|
Shrink Fixed subterms recursively.
|
2015-12-11 11:17:51 -05:00 |
|
Rob Rix
|
39cfe5f96f
|
Remove a redundant permutation of Fixed terms.
|
2015-12-11 11:17:39 -05:00 |
|
Rob Rix
|
d5041aaf5e
|
Shrink subterms recursively.
|
2015-12-11 11:17:20 -05:00 |
|
Rob Rix
|
65bd8b19c8
|
Remove a redundant variation.
|
2015-12-11 11:16:52 -05:00 |
|
Rob Rix
|
1cb56f5eb3
|
Make sure never to shrink to the argument.
|
2015-12-11 11:16:02 -05:00 |
|
Rob Rix
|
6383404fc4
|
Shrink subsequences of Fixed terms.
|
2015-12-11 11:15:39 -05:00 |
|
Rob Rix
|
dacb2dba48
|
Shrink subsequences of Indexed terms.
|
2015-12-11 11:15:21 -05:00 |
|
Rob Rix
|
8d0272bdac
|
Implement shrinking over ArbitraryTerm.
|
2015-12-11 11:14:33 -05:00 |
|
Rob Rix
|
7dd4631053
|
Remove ArbitrarySyntax.
|
2015-12-11 11:00:52 -05:00 |
|
Rob Rix
|
40eafd315d
|
Remove the arbitrary instance for ArbitrarySyntax.
|
2015-12-11 11:00:26 -05:00 |
|
Rob Rix
|
dbbada55da
|
Construct bounded terms.
|
2015-12-11 11:00:18 -05:00 |
|
Rob Rix
|
e6bddf1cf1
|
Bound arbitrary Keyed nodes.
I really hope we can clean this up.
|
2015-12-11 11:00:06 -05:00 |
|
Rob Rix
|
a7c959db6c
|
Use the ordinary ArbitraryTerm constructor.
|
2015-12-11 10:34:43 -05:00 |
|
Rob Rix
|
2cbe8959fe
|
We don’t need to use ArbitrarySyntax for this.
|
2015-12-11 10:33:46 -05:00 |
|
Rob Rix
|
fd0c1e7abe
|
Attempt to define the selection of an arbitrary bounded term.
|
2015-12-11 10:32:31 -05:00 |
|
Rob Rix
|
fda61b074f
|
ArbitraryTerm → Term eliminator.
|
2015-12-11 09:14:54 -05:00 |
|
Rob Rix
|
bc47d2743f
|
Represent ArbitraryTerm as an annotation/Term pair.
Capturing the recursive structure in `ArbitraryTerm` instead of
deferring it to `Term` allows us to simplify construction of arbitrary
inhabitants.
|
2015-12-11 09:14:43 -05:00 |
|
Rob Rix
|
6799d5eba1
|
Use record notation to unwrap ArbitrarySyntax.
|
2015-12-11 09:12:49 -05:00 |
|
Rob Rix
|
0c23f11d01
|
Abstract ArbitraryTerm over its annotation type.
|
2015-12-11 00:35:00 -05:00 |
|
Rob Rix
|
de9aa14da4
|
ArbitraryTerm is parameterized by its leaf type.
|
2015-12-11 00:33:43 -05:00 |
|
Rob Rix
|
2f744cd769
|
ArbitrarySyntax is Arbitrary.
|
2015-12-11 00:32:59 -05:00 |
|
Rob Rix
|
c7dbd6e79b
|
Add an ArbitrarySyntax type.
|
2015-12-11 00:32:46 -05:00 |
|
Rob Rix
|
a71a4d2e36
|
Adjoining onto no rows is also identity.
|
2015-12-11 00:24:37 -05:00 |
|
Rob Rix
|
de75e838d0
|
Test that adjoining onto empty rows is identity.
|
2015-12-11 00:23:57 -05:00 |
|
Rob Rix
|
390fa5ee73
|
Test that adjoining mempty is idempotent.
|
2015-12-11 00:22:21 -05:00 |
|
Rob Rix
|
9d71aefd04
|
Add an Arbitrary instance for Row.
|
2015-12-11 00:20:25 -05:00 |
|
Rob Rix
|
91140aa8fa
|
Add an Arbitrary instance for Line.
|
2015-12-11 00:19:48 -05:00 |
|