“Lenses are a way to focus from a big data structure to a particular focus inside that data structure where you want something to happen,” explains Chris Ford, software developer and Thoughtworker from London.
Chris gave the talk Journey Through the Looking Glass, and What I Found There at XConf Hamburg, where he explained his experience implementing a Lenses library in Clojure. I took the opportunity to interview him afterwards to better understand what this concept from the Haskell functional programming language can bring to the modern enterprise developer.
I talk with Chris for 23 minutes about his experience with Lenses in Clojure. First, we define what a Lense is and what I would want to use it. Then we talk about the specifics of implementing Lenses in a programming language introducing the terms Functor and Function. We close the episode by talking about the possibility to implement lenses in other programming languages such as Java 8 or JavaScript.
Disclaimer: The statements and opinions expressed in this article are those of the author(s) and do not necessarily reflect the positions of Thoughtworks.