1
1
mirror of https://github.com/github/semantic.git synced 2024-12-01 17:59:10 +03:00
Commit Graph

55 Commits

Author SHA1 Message Date
Rob Rix
090406aafe Define coiterate so as to reflect its symmetry with ana. 2015-10-22 17:09:00 -04:00
Rob Rix
657d7edbba Merge branch 'unfold-diffs' into annotate-diffs
Conflicts:
	prototype/Doubt/Free.swift
	prototype/Doubt/TermType.swift
2015-10-22 13:40:19 -04:00
Rob Rix
6bcbccfe08 Document coiterate as an anamorphism. 2015-10-22 12:55:06 -04:00
Rob Rix
8cbb69fa97 Rename the Syntax piecewise JSON functions after the type parameters (mostly). 2015-10-22 10:47:48 -04:00
Rob Rix
40fe88b4a4 Rename the Syntax piecewise equality functions after the type parameters (mostly). 2015-10-22 10:46:51 -04:00
Rob Rix
20ef96b483 Rename the A type parameter to Leaf. 2015-10-22 10:23:20 -04:00
Rob Rix
810c6081b9 Rename the B parameter to Annotation. 2015-10-22 10:22:21 -04:00
Rob Rix
c75b36512c CofreeType implies TermType. 2015-10-22 10:21:04 -04:00
Rob Rix
fbd7c1f742 Merge branch 'master' into output-source-range-annotations-to-json 2015-10-19 13:18:12 -04:00
Rob Rix
3d85194f8c Merge branch 'master' into cofree-memoizes 2015-10-16 16:40:59 -04:00
Rob Rix
b4dc1e7bf1 Cofree is not lazy. 2015-10-16 16:40:47 -04:00
Rob Rix
841f7017c8 Indirection. 2015-10-16 16:10:10 -04:00
Rob Rix
f4e462eba2 Cofree uses Memo to ensure that statefully-computed subtrees are “ok.”
Randomness is an effect.
2015-10-16 16:05:37 -04:00
Rob Rix
8c341fc129 Terms annotated with ranges over a string can be printed to JSON. 2015-10-16 11:09:20 -04:00
Rob Rix
fcff1d8e9f Correct a section marker. 2015-10-16 09:20:47 -04:00
Rob Rix
1e53b446ab Cofree conforms to CofreeType. 2015-10-15 15:42:39 -04:00
Rob Rix
522757c121 Replace CofreeConvertible with CofreeType. 2015-10-15 15:42:24 -04:00
Rob Rix
8d93a77b86 Add a CofreeConvertible protocol. 2015-10-15 15:31:51 -04:00
Rob Rix
260a317194 Merge branch 'master' into restrict-comparisons-by-category
Conflicts:
	prototype/Doubt.xcodeproj/project.pbxproj
2015-10-15 09:47:49 -04:00
Rob Rix
8b5a269d5e Remove Cofree hashing. 2015-10-15 09:43:23 -04:00
Rob Rix
c022085919 Merge branch 'master' into restrict-comparisons-by-category
Conflicts:
	prototype/Doubt.xcodeproj/project.pbxproj
	prototype/Doubt/Fix.swift
2015-10-15 09:28:21 -04:00
Rob Rix
18d19173c0 Remove the Fix → Cofree constructor. 2015-10-15 08:58:48 -04:00
Rob Rix
e0692770b3 Cofree is CustomDebugStringConvertible. 2015-10-14 16:40:13 -04:00
Rob Rix
124d45a549 Cofree has categories when B: Categorizable. 2015-10-14 15:49:23 -04:00
Rob Rix
07690849a6 Convenience for constructing Cofree with autoclosures. 2015-10-14 14:17:29 -04:00
Rob Rix
436708bb3b 🔥 chaff. 2015-10-14 13:16:27 -04:00
Rob Rix
b9ac0d3c38 JSON property for cofree over CustomJSONConvertible types. 2015-10-14 11:01:41 -04:00
Rob Rix
8f86f9ab76 Parameterized JSON conversion for Cofree. 2015-10-14 10:59:41 -04:00
Rob Rix
e70cbe4235 Algebraic hashing over cofrees of Hashable types. 2015-10-14 10:57:25 -04:00
Rob Rix
db57734586 Parameterized hashing over Cofree. 2015-10-14 10:56:25 -04:00
Rob Rix
3dcfbc0d38 Equality over Cofrees of equatable types. 2015-10-14 10:53:29 -04:00
Rob Rix
889dab1df2 Parameterized equality over Cofree. 2015-10-14 10:52:27 -04:00
Rob Rix
84ea5248e3 Unroll does not need to be indirect. 2015-10-14 10:49:05 -04:00
Rob Rix
8f3ae52d29 Cofree’s recurrence is lazy. 2015-10-14 10:48:42 -04:00
Rob Rix
c8234d27a4 Document coiterate. 2015-10-14 10:44:53 -04:00
Rob Rix
c13023b85b Add a constructor annotating terms into Cofrees. 2015-10-14 10:39:21 -04:00
Rob Rix
961e9ae7d7 Implement coiteration. 2015-10-14 10:39:01 -04:00
Rob Rix
fa2bfcd367 duplicate() is just extend(id). 2015-10-14 10:24:16 -04:00
Rob Rix
5015238546 Document Cofree.document(). 2015-10-14 10:23:43 -04:00
Rob Rix
b50ebdf21a Document Cofree.extend(). 2015-10-14 10:22:04 -04:00
Rob Rix
011719b752 map’s transformation function is @noescape. 2015-10-14 10:20:21 -04:00
Rob Rix
2c56ee66ea extend’s transformation function is @noescape. 2015-10-14 10:20:05 -04:00
Rob Rix
7bff8f6f50 Document Cofree.extract. 2015-10-14 10:19:38 -04:00
Rob Rix
ab3d297d95 Document Cofree. 2015-10-14 10:19:02 -04:00
Rob Rix
6774213fcd Cofree is a Functor. 2015-10-14 10:09:38 -04:00
Rob Rix
a606d9d798 Implement duplicate on Cofree. 2015-10-14 10:03:42 -04:00
Rob Rix
1a44f29778 Cofree.extend is public. 2015-10-14 10:01:26 -04:00
Rob Rix
cc805f6610 Cofree.extract is public. 2015-10-14 10:01:19 -04:00
Rob Rix
26f0ea419d Implement extend on Cofree. 2015-10-14 10:00:16 -04:00
Rob Rix
ab554c52a0 Unwrap Cofrees. 2015-10-14 09:59:04 -04:00