What you needa know about Yoneda
Profunctor optics are a neat and composable representation of bidirectional data accessors, such as lenses (a "getter" and a "setter", for example onto a field of a record), and their dual, prisms. The profunctor representation exploits higher-order functions and higher-kinded type constructor classes. The relationship with the "getter" and "setter" functions is not at all obvious; it turns out to be a fairly direct application of the Yoneda Lemma, arguably the most important result in category theory. This talk will explain the Yoneda Lemma, with many concrete examples, including profunctor optics.
THIS TALK IN THREE WORDS
Categories
Functional programming
Lenses
OBJECTIVES
Some insight into the Yoneda Lemma, achieved via profunctor optics
TARGET AUDIENCE
Programmers, especially the categorically-curious