meta_pixel
Tapesearch Logo
Log in
Thoughtworks Technology Podcast

Lenses in Clojure

Thoughtworks Technology Podcast

Thoughtworks

Technology, Careers, Business

4.558 Ratings

🗓️ 5 September 2015

⏱️ 23 minutes

🧾️ Download transcript

Summary

Functional programming has a lot of concepts which have to be yet discovered by mainstream programming. One, known especially from the Haskell programming language, are Lenses. Johannes Thönes met Chris Ford, Software Developer and ThoughtWorker from London, during XConf in Hamburg where he gave a talk on implementing Lenses in Clojure. In this 23 minute interview, Johannes talks with Chris about his experience with Lenses in Clojure. First they define what a Lense is and what you would want to do with it. Then they 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.

Transcript

Click on a timestamp to play from that location

0:00.0

Welcome to another episode of the ThoughtWorks podcast.

0:05.0

I've attended Xconf in Hamburg, and there I met Chris Ford.

0:12.3

Chris Ford, why don't you start by telling our listeners who you are?

0:17.2

Sure.

0:18.0

I'm an Australian programmer, though I live in the UK now. So I've lived in London with various

0:24.8

trips to different parts of the world with ThoughtWorks for about six years now. And the majority of

0:29.7

those have been with ThoughtWorks as a tech lead. Right. And what's the topic you want to talk about?

0:36.3

Well, my topic was called Through the Looking Glass, which is, I guess, a little bit

0:40.6

of a kind of a clever play on words.

0:42.6

It was actually about the functional programming concept of lenses.

0:45.9

So I took the title of a famous book by Lewis Carroll, which is the sequel to Alice in Wonderland,

0:51.2

and I used that as a bit of a prop for explaining how lenses work.

0:55.6

And how do lenses work?

0:57.1

I just spent 45 minutes subscribing it now you want me to just sum it up.

1:01.3

I think it's quite possible.

1:02.4

Lenses are a way to focus from a big data structure to a particular focus inside that data

1:08.6

structure where you want something to happen.

1:10.0

So it allows you to reuse the concept of that focus and many different concepts.

1:15.3

So it allows you to extract something from your code that previously was probably

1:18.6

mixed up amongst a whole bunch of other data processing code and make it a visible

1:22.8

responsibility.

1:24.3

Okay.

...

Please login to see the full transcript.

Disclaimer: The podcast and artwork embedded on this page are from Thoughtworks, and are the property of its owner and not affiliated with or endorsed by Tapesearch.

Generated transcripts are the property of Thoughtworks and are distributed freely under the Fair Use doctrine. Transcripts generated by Tapesearch are not guaranteed to be accurate.

Copyright © Tapesearch 2026.