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

117 Commits

Author SHA1 Message Date
joshvera
20e2a520e6 add .Fixed to Syntax 2015-10-23 14:47:44 -04:00
Rob Rix
aca676dd04 Reintroduce the CofreeType → Free convenience constructor. 2015-10-23 11:43:05 -04:00
Rob Rix
2b216398b7 iterate → cata 2015-10-23 11:36:05 -04:00
Rob Rix
9b310b8c78 coiterate → ana 2015-10-23 11:34:53 -04:00
Rob Rix
c187b796f3 Merge branch 'master' into annotate-diffs
Conflicts:
	prototype/Doubt/Free.swift
2015-10-23 10:48:17 -04:00
Rob Rix
b194dede9a Add annotations to Free 😭
This is heartbreaking, but it was always going to end this way.
2015-10-22 18:55:28 -04:00
Rob Rix
b425d69c36 Define hylo and reiterate through Syntax. 2015-10-22 18:18:05 -04:00
Rob Rix
4195edc469 Define a reiterate function. 2015-10-22 17:25:58 -04:00
Rob Rix
d0aeedeb52 Define iterate so as to clarify its relationship with cata. 2015-10-22 17:15:49 -04:00
Rob Rix
521e253240 Define hylomorphism through Syntax. 2015-10-22 17:11:35 -04:00
Rob Rix
f4966684a5 Rename the functions to unfold. 2015-10-22 17:09:40 -04:00
Rob Rix
f0379f421b Define ana using the backwards application operator to clarify dataflow. 2015-10-22 17:08:17 -04:00
Rob Rix
49fb14f6a8 Define Free equality over Patch<Term: CofreeType> without reference to annotation equality. 2015-10-22 16:01:48 -04:00
Rob Rix
39ae63d426 It doesn’t matter if annotations are equatable. 2015-10-22 15:52:08 -04:00
Rob Rix
5e0fbd8d8c Revert "Constrain Free equality over CofreeType to terms whose annotations are equatable."
This reverts commit a79f354992cbca36fa3e55de648e6bc6c55f956b.
2015-10-22 15:51:52 -04:00
Rob Rix
651a3c2f91 Don’t constrain recursive Free construction from TermType to the same annotation type. 2015-10-22 15:50:16 -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
f36651660b ana is static. 2015-10-22 13:11:00 -04:00
Rob Rix
f145bb4293 Document ana. 2015-10-22 12:53:18 -04:00
Rob Rix
d4744200ae Rename the parameter to transform. 2015-10-22 12:51:26 -04:00
Rob Rix
e7a525910f Implement anamorphism over Free. 2015-10-22 12:49:41 -04:00
Rob Rix
6d665ff391 Remove an unused conversion of Free to JSON. 2015-10-22 10:57:31 -04:00
Rob Rix
76b7df9d68 Constrain Free equality over CofreeType to terms whose annotations are equatable. 2015-10-22 10:54:49 -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
831f8dcbae Name Free’s piecewise JSON functions after the type parameters. 2015-10-22 10:43:42 -04:00
Rob Rix
d678946fda Name the piecewise equality functions after the type parameters. 2015-10-22 10:41:42 -04:00
Rob Rix
0a28a390b7 Remove SyntaxConvertible. 2015-10-22 10:40:08 -04:00
Rob Rix
5cfe2b33b9 Free is no longer SyntaxConvertible. 2015-10-22 10:39:33 -04:00
Rob Rix
750def8107 Fix up some comments. 2015-10-22 10:37:00 -04:00
Rob Rix
ad05308ab6 Define the recursive TermType → Free constructor over CofreeType instead. 2015-10-22 10:33:25 -04:00
Rob Rix
c9b33f826c Add an annotation parameter to Free. 2015-10-22 10:30:38 -04:00
Rob Rix
03aa95caf9 Rename the TermType.LeafType associated type to Leaf. 2015-10-22 10:17:51 -04:00
Rob Rix
7eed54dcdc Rename the B type parameter to Value. 2015-10-22 10:12:52 -04:00
Rob Rix
2aa104ab8c Rename the A type parameter to Leaf. 2015-10-22 10:10:56 -04:00
Rob Rix
f5380548e2 Annotate Free JSON output with the case explicitly.
Diffs of diffs were getting pretty confusing.
2015-10-21 11:57:33 -04:00
Josh Vera
107df1988d Merge pull request #132 from github/merge
Merge
2015-10-19 15:10:19 -04:00
Rob Rix
7c16e4d0cc Recover before/after states with merge. 2015-10-19 13:14:21 -04:00
Rob Rix
607fbb9672 discardNullTerms is static. 2015-10-19 13:13:52 -04:00
Rob Rix
1cf323e416 Add a partial merge method. 2015-10-19 13:12:45 -04:00
Rob Rix
8b5c0c87f8 merge returns a Term. 2015-10-19 13:10:35 -04:00
Rob Rix
415822c1af Implement merge on Free. 2015-10-19 13:05:09 -04:00
Rob Rix
0ebe673aaf Inversion is less constrained. 2015-10-16 17:44:18 -04:00
Rob Rix
0c786ed160 Use the PatchType init to delete. 2015-10-16 09:30:09 -04:00
Rob Rix
aa2cce5a39 Use the PatchType init to insert. 2015-10-16 09:29:56 -04:00
Rob Rix
902ce99172 Use the PatchType init to replace. 2015-10-16 09:29:43 -04:00
Rob Rix
52dc661fc9 Use Patches’ inverse directly. 2015-10-16 09:24:12 -04:00
Rob Rix
c1cb797c6f Use Patches’ state directly. 2015-10-16 09:23:33 -04:00
Rob Rix
38be68d95d Rename PatchConvertible to PatchType. 2015-10-16 09:21:41 -04:00
Rob Rix
b43badaf04 🔥 FreeConvertible. 2015-10-16 09:20:14 -04:00