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

361 Commits

Author SHA1 Message Date
Rob Rix
277757e3a2 Free implements hash when A and B are Hashable. 2015-10-02 16:27:44 -04:00
Rob Rix
e4d0a41093 Express flatMap with analysis. 2015-10-02 14:36:01 -04:00
Rob Rix
b4479e3854 Express map with analysis. 2015-10-02 14:35:18 -04:00
Rob Rix
2b5b85e0b4 Define Free hashing. 2015-10-02 14:35:07 -04:00
Rob Rix
f14433871b Parameterize by leaf hashing. 2015-10-02 14:33:41 -04:00
Rob Rix
3d40071b44 Give the hash parameter an external label. 2015-10-02 14:32:35 -04:00
Rob Rix
334bb3017e The roll function doesn’t escape. 2015-10-02 14:29:45 -04:00
Rob Rix
7d49895796 Section headers for functor/monad instances. 2015-10-02 14:27:37 -04:00
Rob Rix
7e00f9297e Implement case analysis for Free. 2015-10-02 14:26:53 -04:00
Rob Rix
de2dcf4bf4 == over Free. 2015-10-02 14:18:43 -04:00
Rob Rix
a0e77e2495 == over Fix. 2015-10-02 14:17:59 -04:00
Rob Rix
bc857f810b Fix Equality. 2015-10-02 14:17:25 -04:00
Rob Rix
87994c824f Free Equality. 2015-10-02 14:15:17 -04:00
Rob Rix
43bdcd45c9 Parameterize Syntax equality by leaf type equality. 2015-10-02 14:15:13 -04:00
Rob Rix
296dbeea8f Add a section mark for Syntax equality. 2015-10-02 14:12:54 -04:00
Rob Rix
6d5fd97552 Add an external label for recurrence equality. 2015-10-02 14:12:46 -04:00
Rob Rix
45a7e372b5 Rename the recur parameter. 2015-10-02 14:12:19 -04:00
Rob Rix
f8c37695ae Document Fix’s case. 2015-10-02 14:08:03 -04:00
Rob Rix
b2219feed7 Document Free’s cases. 2015-10-02 14:07:29 -04:00
Rob Rix
0a64dc8741 Free is indeed a Monad. 2015-10-02 14:03:34 -04:00
Rob Rix
97686157f3 Free is a Functor. 2015-10-02 13:59:55 -04:00
Rob Rix
e63ccff83f Documentation for Free. 2015-10-02 13:54:39 -04:00
Rob Rix
ad3d4b6c3f Backticks around types. 2015-10-02 13:54:34 -04:00
Rob Rix
0ff70be000 Stub in Free. 2015-10-02 13:43:43 -04:00
Rob Rix
da3c1041e0 Fix is public. 2015-10-02 13:42:55 -04:00
Rob Rix
bf75fcab61 Add Fix, the fixpoint of Syntax. 2015-10-02 13:21:43 -04:00
Rob Rix
cfb8cb92b9 Merge branch 'master' into optional-instead-of-empty 2015-10-02 13:06:42 -04:00
Rob Rix
ea5d9ef814 Merge branch 'master' into operators-alongside-operands 2015-10-02 13:05:23 -04:00
Rob Rix
cacba977dd Expand on the documentation of Copy. 2015-10-02 13:02:51 -04:00
Rob Rix
a96a88cdf8 Document magnitude a little. 2015-10-02 12:58:34 -04:00
Rob Rix
05a7c1a037 Remove Syntax.Empty. 2015-10-02 12:37:09 -04:00
Rob Rix
3cae5390b7 Inserts and Deletes Patch with nil. 2015-10-02 12:31:30 -04:00
Rob Rix
6eb840f795 Remove the Tree constructor wrappers. 2015-10-02 12:31:19 -04:00
Rob Rix
730790fec7 Patch states can be Optional. 2015-10-02 12:24:51 -04:00
Rob Rix
2ab10d6b3d Empty Hashes. 2015-10-02 12:24:18 -04:00
Rob Rix
49721679b6 Move Term equality into its file. 2015-10-01 15:26:15 -04:00
Rob Rix
906e502def Move Syntax equality into its file. 2015-10-01 15:25:49 -04:00
Rob Rix
4823a47f23 Rephrase parameterized equality as a static function. 2015-10-01 15:25:14 -04:00
Rob Rix
6a6b146863 Move Doc equality to its file. 2015-10-01 15:17:07 -04:00
Rob Rix
146f59bc23 Move Vertex equality to its file. 2015-10-01 15:16:25 -04:00
Rob Rix
91e119cde7 Diff’s Comparable implementation lives alongside it. 2015-10-01 15:15:30 -04:00
Rob Rix
bba8dacbc4 Some documentation comments. 2015-10-01 14:25:17 -04:00
Rob Rix
8961ee9168 Branch has only one child. 2015-10-01 14:08:13 -04:00
Rob Rix
0e7bc6b2b3 Stub in a ByIndex case for SES diffing. 2015-10-01 14:01:59 -04:00
Rob Rix
533e4578ea Comma-separate. 2015-10-01 14:01:19 -04:00
Rob Rix
12663f1158 Add ByKey to Diff. 2015-10-01 13:54:23 -04:00
Rob Rix
dda95ed386 Require Term’s leaf type to be Equatable.
This is a bit of a hack.
2015-10-01 13:52:32 -04:00
Rob Rix
fb247732cc Move diff equality into Diff.swift. 2015-10-01 11:34:17 -04:00
Rob Rix
8bac863ca0 Hash is AlgebraicHashable. 2015-10-01 10:46:25 -04:00
Rob Rix
009920606b Add unordered hashing. 2015-10-01 10:45:47 -04:00