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

504 Commits

Author SHA1 Message Date
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
Rob Rix
36c8fa03c9 FreeAlgorithm doesn’t need recur when B: FreeConvertible. 2015-10-06 12:15:08 -04:00
Rob Rix
1fcba3fca0 recur actually has to return Diff.
`B` will only be identified with `Diff` when `B: FreeConvertible`.
2015-10-06 12:12:47 -04:00
Rob Rix
131ae72f1a Note that we can’t call recur in the Recursive strategy.
Paradox.
2015-10-06 12:09:18 -04:00
Rob Rix
ac0b142a40 Recur through a parameter pairing Terms. 2015-10-06 12:07:56 -04:00
Rob Rix
f30ebc8cdb Diff/Term typealiases are public. 2015-10-06 12:03:58 -04:00
Rob Rix
d020d17f60 Note that we need to recur in SES. 2015-10-06 12:01:39 -04:00
Rob Rix
6a11a88dea Compute the best diff to continue with. 2015-10-06 12:01:14 -04:00
Rob Rix
eb2b242d3a Extract the nominated next diff into a temporary. 2015-10-06 11:58:36 -04:00
Rob Rix
28d5612c44 Use costOfStream to implement cons. 2015-10-06 11:57:37 -04:00
Rob Rix
1ac2f8d8c0 Add a function to compute the cost of the rest of the graph. 2015-10-06 11:57:04 -04:00
Rob Rix
d7c36a30c9 Remove here. 2015-10-06 11:55:55 -04:00
Rob Rix
84a1122ed7 Write cost as a func. 2015-10-06 11:55:15 -04:00
Rob Rix
cc6627bb52 Write cons as a func. 2015-10-06 11:54:42 -04:00
Rob Rix
c0ab03e73d Compute the cost of the remainder of the stream. 2015-10-06 11:52:56 -04:00
Rob Rix
97b4c59a81 Rewrite the sum to wrap stream construction. 2015-10-06 11:52:13 -04:00
Rob Rix
3cdc9bd745 Simplify the Stream-unconsing. 2015-10-06 11:48:50 -04:00
Rob Rix
5e144553fd Add a function to compute the cost of the rest of the diff. 2015-10-06 11:48:04 -04:00
Rob Rix
4e6dd07e78 Extract the diff. 2015-10-06 11:46:30 -04:00
Rob Rix
3919a4c093 Interpret free algorithms where we’re computing a diff. 2015-10-06 11:43:17 -04:00
Rob Rix
6e1a7c6794 Memoize a cost for diffs. 2015-10-06 11:41:37 -04:00
Rob Rix
03c5f0b644 Stub diffing in the middle of the graph. 2015-10-06 11:40:54 -04:00
Rob Rix
1d993bb65b Diff along the right of the edit graph. 2015-10-06 11:40:42 -04:00
Rob Rix
c090fc33d5 Diff along the bottom of the edit graph. 2015-10-06 11:39:34 -04:00
Rob Rix
f442f3594f Stub in diffing with Matrix. 2015-10-06 11:38:50 -04:00
Rob Rix
88030e217f Short-circuit degenerate cases. 2015-10-06 11:30:41 -04:00
Rob Rix
8dd605bb54 Add a function computing the cost of a diff. 2015-10-06 11:30:21 -04:00
Rob Rix
b910fdba46 Section header for Syntax.map. 2015-10-06 11:08:39 -04:00
Rob Rix
286ff11f79 Rename iter to iterate. 2015-10-06 11:05:02 -04:00
Rob Rix
8800c57ca7 Oh yeah, method dispatch works too. 2015-10-06 11:04:36 -04:00
Rob Rix
8226285153 Implement iter as a method. 2015-10-06 11:04:14 -04:00
Rob Rix
c0edc77185 Implement iter by case analysis. 2015-10-06 11:03:03 -04:00
Rob Rix
3da765d32b Identity. 2015-10-06 11:02:22 -04:00
Rob Rix
3d06b533bc Implement iter over Free. 2015-10-06 11:02:15 -04:00
Rob Rix
24e113d2f0 The hash property on Free is public. 2015-10-06 11:00:47 -04:00
Rob Rix
0be3eeb8e1 Dictionary diffing should recur. 2015-10-06 09:28:30 -04:00
Rob Rix
13939ba7c6 Merge branch 'master' into shortest-edit-script-in-algorithm 2015-10-05 17:56:09 -04:00
Rob Rix
fd397ce958 Merge pull request #57 from github/a-language-in-the-specific-domain-of-diffing
A language in the specific domain of diffing
2015-10-05 17:55:40 -04:00
Rob Rix
3fb6f24d8b Diff indexed terms. 2015-10-05 17:30:29 -04:00
Rob Rix
b08a51a360 Abbreviate further. 2015-10-05 17:29:20 -04:00
Rob Rix
071bf6bd6f Stub in a matrix pairing the elements to be diffed. 2015-10-05 17:27:28 -04:00
Rob Rix
d00da3f90a Remove evaluation from Algorithm. 2015-10-05 17:26:17 -04:00