1
1
mirror of https://github.com/github/semantic.git synced 2024-12-22 06:11:49 +03:00
Commit Graph

458 Commits

Author SHA1 Message Date
Rob Rix
939a714807 🔥 AnyHashable. 2015-10-06 19:20:06 -04:00
Rob Rix
47dd0b4849 Construct with Diff(), not copy(). 2015-10-06 17:47:10 -04:00
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
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
0a6a136bff 🔥 Vertex & VertexTests. 2015-10-06 14:24:56 -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
648945fee0 FreeAlgorithm.evaluate() calls out to SES. 2015-10-06 13:09:17 -04:00
Rob Rix
d2b3f16cfc Document SES. 2015-10-06 13:08:17 -04:00
Rob Rix
90b404b3ee Extract the SES function. 2015-10-06 13:05:49 -04:00
Rob Rix
6cef3b9884 Matrix is public. 2015-10-06 13:00:07 -04:00
Rob Rix
bdabcc5c24 Matrix.values is private. 2015-10-06 13:00:01 -04:00
Rob Rix
e4689b9102 Fix hashing is public. 2015-10-06 12:59:13 -04:00
Rob Rix
900d364057 Link to @patrickt’s tutorials on recursion schemes. 2015-10-06 12:53:30 -04:00
Rob Rix
675d355b96 Document iterate. 2015-10-06 12:47:33 -04:00
Rob Rix
67d35078d8 Call a Term a Term. 2015-10-06 12:25:40 -04:00
Rob Rix
cce1ed61aa Document FreeAlgorithm.init. 2015-10-06 12:24:58 -04:00
Rob Rix
511ef4d1a1 Document that out-of-bound indices are safe. 2015-10-06 12:20:58 -04:00
Rob Rix
25f29c328c Document Matrix a little. 2015-10-06 12:19:59 -04:00
Rob Rix
cb33717fb9 🔥 Syntax.reduce. 2015-10-06 12:17:51 -04:00
Rob Rix
69b8028750 🔥 Term.swift. 2015-10-06 12:17:38 -04:00
Rob Rix
b1af1a63a4 🔥 Diff.swift. 2015-10-06 12:17:14 -04:00
Rob Rix
4f95704c97 Remove an obsolete fixme. 2015-10-06 12:16:37 -04:00
Rob Rix
c322386cb4 Recur in dictionary diffing. 2015-10-06 12:16:19 -04:00
Rob Rix
ebca63b01e Recur in SES. 2015-10-06 12:15:48 -04:00
Rob Rix
e14c5a7f9d FreeAlgorithm doesn’t need equals or recur when A: Equatable & B: FreeConvertible. 2015-10-06 12:15:28 -04:00