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 |
|
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 |
|