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

147 Commits

Author SHA1 Message Date
Rob Rix
ab615dc84e Manually fuse the map and catamorphism in Free.sum. 2015-11-12 17:09:19 -05:00
Rob Rix
b0054aee54 Remove Free.reduce. 2015-11-12 17:00:05 -05:00
Rob Rix
f2004a22b8 Inline reduction in Free.sum. 2015-11-12 16:55:11 -05:00
Rob Rix
b3ace6c533 Free is a monad. 2015-11-05 17:18:03 -05:00
Rob Rix
224f636f9b Remove a bogus default case. 2015-11-05 10:34:27 -05:00
Rob Rix
c6baaf677d Explore Keyed nodes. 2015-11-05 10:33:54 -05:00
Rob Rix
ad0dffe20c Explore Fixed terms in diffs. 2015-11-04 16:34:47 -05:00
Rob Rix
51166a0e0f Explore Indexed terms in diffs. 2015-11-04 16:34:37 -05:00
Rob Rix
80a29789ad Patches & leaves are nullary. 2015-11-04 16:22:42 -05:00
Rob Rix
29645e0d99 Stub in Free.explore() 2015-11-04 16:22:29 -05:00
Rob Rix
a372b7aaaf Remove Free.analysis. 2015-11-03 11:21:41 -05:00
Rob Rix
db7c1dc1ef Switch in Free.JSON directly. 2015-11-03 11:21:16 -05:00
Rob Rix
4f16ce62c3 Switch in Free.map directly. 2015-11-03 11:19:33 -05:00
Rob Rix
02af784036 Nothing ever flat maps a Free. 2015-11-03 11:18:13 -05:00
Rob Rix
4169d8d554 Switch in Free.cata directly. 2015-11-03 11:17:41 -05:00
Rob Rix
4f03d5355b 🔥 Free.para. 2015-11-02 17:18:56 -05:00
Rob Rix
3fbfeccce9 Free.para’s transformation function receives the annotation. 2015-11-02 15:12:27 -05:00
Rob Rix
aa815e8010 Free.cata’s transformation function receives the annotation. 2015-11-02 15:09:53 -05:00
Rob Rix
5aef08e4c5 Paramorphism over Free. 2015-11-02 14:33:02 -05:00
Rob Rix
17987eff80 Free.ana rethrows errors. 2015-10-28 12:07:23 -04:00
Rob Rix
33bd0c5644 Free.ana’s argument does not escape. 2015-10-28 12:06:30 -04:00
Rob Rix
f469b4f691 Implement Free.ana without application or composition operators.
Swift can’t trace `noescape` or `rethrows` transitively through them.
2015-10-28 12:05:40 -04:00
Rob Rix
8ca7cf7599 Free.merge’s argument does not escape. 2015-10-28 12:04:56 -04:00
Rob Rix
d7eb23d291 Free.cata rethrows errors. 2015-10-28 11:58:13 -04:00
Rob Rix
9228031f5d Free.flatMap rethrows errors. 2015-10-28 11:57:29 -04:00
Rob Rix
feabaa01a7 Free.map rethrows errors. 2015-10-28 11:56:49 -04:00
Rob Rix
abab6f3c7b Free.sum’s cost function does not escape. 2015-10-28 11:55:38 -04:00
Rob Rix
9f60616f8b Free.reduce’s combining function does not escape. 2015-10-28 11:55:06 -04:00
Rob Rix
2252f8dbe6 Free.analysis rethrows errors. 2015-10-28 11:54:40 -04:00
Rob Rix
11a2d2700a Free.cata’s argument does not escape. 2015-10-28 11:53:47 -04:00
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