1
1
mirror of https://github.com/github/semantic.git synced 2024-11-29 11:02:26 +03:00
Commit Graph

715 Commits

Author SHA1 Message Date
Rob Rix
c9d51049df Construct with Diff(), not copy(). 2015-10-06 17:47:04 -04:00
Rob Rix
de61021d32 Once more, call it Term. 2015-10-06 17:46:37 -04:00
Rob Rix
f51f6f39a2 Call it Term. 2015-10-06 17:46:02 -04:00
Rob Rix
22773917a3 Construct Free with Fix. 2015-10-06 17:45:24 -04:00
Rob Rix
d097f14fcb Explain SES implementation details a little. 2015-10-06 17:36:49 -04:00
Rob Rix
6030731cc8 Extend the graph and return Stream.Nil at the end. 2015-10-06 17:36:41 -04:00
Rob Rix
57fb8ff251 Document the purpose of the matrix. 2015-10-06 17:29:33 -04:00
Rob Rix
833d27c54a Test an insertion at the end. 2015-10-06 17:29:06 -04:00
Rob Rix
6e799e0b79 Test a deletion at the end. 2015-10-06 17:28:25 -04:00
Rob Rix
d7db7415dc Patches have different costs. 2015-10-06 17:08:22 -04:00
Rob Rix
4fdbcf948f Patches have a cost.
This charges `Replace` patches at a higher cost than `Insert`/`Delete`
patches to avoid spurious replacements.
2015-10-06 17:07:16 -04:00
Rob Rix
bcc3da35f9 Recur at the corner.
This can’t be right.
2015-10-06 17:01:27 -04:00
Rob Rix
c7aad22838 Insert/delete/recur based on the edge being followed. 2015-10-06 17:01:17 -04:00
Rob Rix
c2d4c96d62 Recurrence checks for equality. 2015-10-06 16:59:29 -04:00
Rob Rix
a1a832012e Implement a function copying terms into diffs. 2015-10-06 16:59:11 -04:00
Rob Rix
a628177722 Move SES to its own file. 2015-10-06 16:50:23 -04:00
Rob Rix
8e0cafbac4 Info’s debug description uses its categories’ debug descriptions. 2015-10-06 16:49:14 -04:00
Rob Rix
606d721dea Category is CustomDebugStringConvertible. 2015-10-06 16:48:44 -04:00
Rob Rix
ee8794fd81 Patch is CustomDebugStringConvertible. 2015-10-06 16:45:36 -04:00
Rob Rix
0237d5991a Fix is CustomDebugStringConvertible. 2015-10-06 16:44:00 -04:00
Rob Rix
29d889ef95 Free is CustomDebugStringConvertible. 2015-10-06 16:43:20 -04:00
Rob Rix
64830960e5 Info is CustomDebugStringConvertible. 2015-10-06 16:41:54 -04:00
Rob Rix
db63777dd9 Represent Insert/Delete explicitly in Patch.
Fixes #60.
2015-10-06 16:31:44 -04:00
Rob Rix
17191dd8ab Correct the tests to equate arrays of diffs by element, and not by memory (!).
- rdar://22996431
- rdar://22996542
2015-10-06 16:23:48 -04:00
Rob Rix
3cc732f54e Rename DiffTests to SESTests. 2015-10-06 14:25:18 -04:00
Rob Rix
0a6a136bff 🔥 Vertex & VertexTests. 2015-10-06 14:24:56 -04:00
Rob Rix
9b6a3f6e36 Remove the fixme because it has been fixed. 2015-10-06 14:23:59 -04:00
Rob Rix
2726a43c83 Lazily, not eagerly.
`Memo.init` selected the eager version, of course, since the lazy
version takes a closure.
2015-10-06 14:19:39 -04:00
Rob Rix
1658219d59 Document constructRowMajor. 2015-10-06 14:17:14 -04:00
Rob Rix
092087fc54 Extract row-major ordering into a private function. 2015-10-06 14:15:21 -04:00
Rob Rix
934390a0d5 Retrieve in row-major order. 2015-10-06 14:11:36 -04:00
Rob Rix
d12c95e296 Insert in row-major order. 2015-10-06 14:11:26 -04:00
Rob Rix
e178745c56 Cache the costs for the rest of the graph at each vertex. 2015-10-06 13:33:38 -04:00
Rob Rix
6c8ce1bcb2 Append, don’t subscript.
Subscripting only replaces, never appends.
2015-10-06 13:29:43 -04:00
Rob Rix
a9349c33dc Port the SES example from the paper. 2015-10-06 13:27:06 -04:00
Rob Rix
48a0935d5c Use the little API for deletion fixtures. 2015-10-06 13:26:44 -04:00
Rob Rix
69d42e121c Port insertion/deletion in the middle. 2015-10-06 13:25:56 -04:00
Rob Rix
9761ba3d98 Port insertion/deletion at head. 2015-10-06 13:25:27 -04:00
Rob Rix
b23a8ac6f7 Rename copy to roll so we can actually call it from within the tests. 2015-10-06 13:25:09 -04:00
Rob Rix
1473d5648b Port the pure insert/delete tests. 2015-10-06 13:22:54 -04:00
Rob Rix
0d8c080f35 Add a little API for diffs. 2015-10-06 13:22:37 -04:00
Rob Rix
5a86df7a8d Assert equality using Assertions.assert. 2015-10-06 13:16:43 -04:00
Rob Rix
cd2faed7ce Add a typealias for diffs. 2015-10-06 13:16:32 -04:00
Rob Rix
ea09799e58 import Assertions. 2015-10-06 13:16:23 -04:00
Rob Rix
b3e6a92224 The tests link against Assertions.framework. 2015-10-06 13:16:15 -04:00
Rob Rix
8825a92ec7 Include Assertions in the workspace. 2015-10-06 13:16:05 -04:00
Rob Rix
1c4a880b09 Add Assertions as a submodule. 2015-10-06 13:13:53 -04:00
Rob Rix
286b91a88d Add a wrapper function to compute the SES. 2015-10-06 13:12:53 -04:00
Rob Rix
1ecafbff43 Import Doubt testably. 2015-10-06 13:10:45 -04:00
Rob Rix
648945fee0 FreeAlgorithm.evaluate() calls out to SES. 2015-10-06 13:09:17 -04:00