Rob Rix
ade6a50b30
Use the state array’s bounds to obviate the need for index transformations.
2017-03-23 15:48:29 -04:00
Rob Rix
95d38df8c4
Add a few more exports.
2017-03-23 15:41:56 -04:00
Rob Rix
a5f33b1bc6
Explicitly enumerate the exports from SES.Myers.
2017-03-23 15:40:17 -04:00
Rob Rix
2b01729a6f
Rename StepF to Step.
2017-03-23 15:38:10 -04:00
Rob Rix
5f9899f6fc
🔥 liftShowsQuaternary & liftShowsQuinary.
2017-03-23 15:35:11 -04:00
Rob Rix
7f13ef23a2
📝 all the things.
2017-03-23 15:34:52 -04:00
Rob Rix
70b825ecbb
Move State into the implementation details section.
2017-03-23 14:55:12 -04:00
Rob Rix
af04668fc5
Move ses into its own section.
2017-03-23 14:54:18 -04:00
Rob Rix
8a5d2f1fa7
Represent downward/rightward moves explicitly in the DSL.
2017-03-23 14:51:45 -04:00
Rob Rix
2118ea17d1
SetK takes an endpoint.
2017-03-23 14:34:32 -04:00
Rob Rix
2567d185c8
Placate hlint.
2017-03-23 14:34:04 -04:00
Rick Winfrey
c6300449df
This is equivalent to Ruby regex \A
and \Z
for treating start of line and end of line the start of input and end of input, and ignores newlines
2017-03-23 11:32:49 -07:00
Rob Rix
19c559ab74
Endpoints carry edit scripts.
2017-03-23 14:31:50 -04:00
Rob Rix
347e96f31a
Add phantom type parameters to Endpoint.
2017-03-23 14:22:56 -04:00
Rob Rix
1ab51de582
Update the failing test’s fixture.
...
I’m pretty sure this is due to us producing a different shortest edit script than the old implementation (but still a correct one, and a shortest one—just a different correct/shortest one), and that in turn causing RWS to make different choices.
2017-03-23 14:21:09 -04:00
Rob Rix
a13c7f009f
Correct the type annotations in the tests.
2017-03-23 14:14:03 -04:00
Rob Rix
452842b197
Correct the calls into SES from lcs & editDistance.
2017-03-23 14:08:52 -04:00
Rob Rix
759b5515f9
ses is the main entry point.
2017-03-23 13:28:40 -04:00
Rob Rix
7a0efc3391
🔥 the bounds check in runSearchAlongK.
2017-03-23 13:24:38 -04:00
Rob Rix
3130ae48e9
Bounds-check k in searchUpToD.
2017-03-23 13:24:27 -04:00
Rick Winfrey
95e751f0e0
🔥 whitespace
2017-03-23 09:38:36 -07:00
Rick Winfrey
37e6929d3b
Use safeGitmonIO for connecting to Unix socket
2017-03-23 09:26:54 -07:00
Rob Rix
77a58106d5
Merge remote-tracking branch 'origin/master' into myers-algorithm-in-proof-refinement-style
2017-03-23 10:58:19 -04:00
Rob Rix
17fad7ce14
Tidy up slide evaluation.
2017-03-23 10:48:51 -04:00
Rob Rix
88b4e5fe06
🔥 getEq.
2017-03-23 10:46:30 -04:00
Rob Rix
ee0554c22b
Read the comparator from the environment.
2017-03-23 10:46:03 -04:00
Rob Rix
41928ba594
Read the edit graph from the environment instead of passing it around.
2017-03-23 10:44:24 -04:00
Rob Rix
a873891ce7
Inline decompose.
2017-03-23 10:29:09 -04:00
Rob Rix
6a3ea32528
Extract bounds-checking for k.
2017-03-23 10:21:33 -04:00
Rob Rix
3568859147
Bounds-check when setting k.
2017-03-23 10:15:55 -04:00
Rob Rix
66d8e618b5
Extract the runSlide evaluator.
2017-03-23 10:14:50 -04:00
Rob Rix
bdb1670f67
Move the ! overload to the top level.
2017-03-23 10:13:40 -04:00
Rob Rix
83efbb56b6
Extract the setK evaluator.
2017-03-23 10:10:40 -04:00
Rob Rix
03808897cf
Extract the getK evaluator.
2017-03-23 10:08:47 -04:00
Rob Rix
3106894876
Extract the moveFromAdjacent evaluator.
2017-03-23 10:07:48 -04:00
Rob Rix
b477a93dba
Extract the searchAlongK evaluator.
2017-03-23 10:06:53 -04:00
Rob Rix
2b1bf43a1e
Pop a couple of call stacks.
2017-03-23 10:05:27 -04:00
Rob Rix
f0e21a1cb4
Extract the searchUpToD evaluator.
2017-03-23 10:05:07 -04:00
Rob Rix
27a608ad7b
Extract the editDistance evaluator.
2017-03-23 10:04:07 -04:00
Rob Rix
5955e7665d
Extract the SES evaluator.
2017-03-23 10:03:03 -04:00
Rob Rix
2ef802e8d7
Extract the failure function to the top level.
2017-03-23 10:02:06 -04:00
Rob Rix
97a6028318
Extract the runLCS evaluator.
2017-03-23 10:00:11 -04:00
Rob Rix
7fe2522e4d
🔥 the shared graph/n/m bindings.
2017-03-23 09:55:56 -04:00
Rob Rix
b9e8fd3e7a
Store inputs & state in arrays instead of vectors.
2017-03-23 09:01:49 -04:00
Rob Rix
f2f5af7d6a
🔥 divideGraph.
2017-03-23 08:55:29 -04:00
Rick Winfrey
a176dda44a
combine safeIO and timeout functionality into a single function
2017-03-22 17:23:36 -07:00
Rick Winfrey
58ce25aa30
Send CPU time in milliseconds, not nanoseconds
2017-03-22 17:23:02 -07:00
Rick Winfrey
bcdf17e0ab
Restrict communication with Gitmon to a single socket connection
...
- Gitmon perceives a socket closing as EOF in the database, and
terminates the record created with the `update` command. This means
that when the `finish` command is issued, the Gitmon database attempts
to insert the process stats as a new record in the Gitmon db.
2017-03-22 17:22:41 -07:00
Rob Rix
ce5af997c9
Test that our implementation of Myers’ algorithm is lossless.
2017-03-22 17:26:05 -04:00
Rob Rix
ec2c0c703c
Renae the disjoint input test.
2017-03-22 17:20:37 -04:00