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

38 Commits

Author SHA1 Message Date
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
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
Rob Rix
3985ef0fea Unroll should be indirect. 2015-10-14 09:56:46 -04:00
Rob Rix
59dd626361 Add a Syntax to Cofree. 2015-10-14 09:43:51 -04:00
Rob Rix
0d662ade08 Implement extract on Cofree. 2015-10-14 09:43:23 -04:00
Rob Rix
a83f77116d Add an Unroll case to Cofree. 2015-10-14 09:42:21 -04:00
Rob Rix
59b60947f9 Stub in Cofree. 2015-10-14 09:34:18 -04:00