Lenses, Folds, and Traversals
Edward Kmett3 HN recommenders · recommended in 3 months, 2013–2014
talk · advanced · evergreen · 2013–2014 on HN
Edward Kmett's talk to the NY Haskell User Group on the lens library, building from fmap and function composition up to lenses, folds and traversals. It shows how these composable combinators access and modify parts of data structures.
HN calls it dense but mind-blowing, the go-to way to understand lenses through algebraic derivation.
Up next
3 mo on HNJonathan Haidt: The moral roots of liberals and conservatives
TED
3 HN recommender · 2016–2018
5 mo on HNClickbait is Unreasonably Effective
Veritasium
5 HN recommender · 2021–2025
2 mo on HNThe Unreasonable Efficiency of Black Holes
minutephysics
2 HN recommender · 2020–2025
3 mo on HNHow Electricity Actually Works
Veritasium
4 HN recommender · 2023–2026
5 mo on HNGovernment Surveillance: Last Week Tonight with John Oliver (HBO)
LastWeekTonight
5 HN recommender · 2015–2023
3 mo on HNHow Not to Land an Orbital Rocket Booster
SpaceX
4 HN recommender · 2018–2026
3 mo on HNSpherical Geometry Is Stranger Than Hyperbolic - Hyperbolica Devlog #2
CodeParade
3 HN recommender · 2021–2026
6 mo on HNThe Biggest Misconception About Electricity
Veritasium
7 HN recommender · 2021–2026
18 mo on HNRuby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
Confreaks
17 HN recommender · 2013–2026
14 mo on HNThe Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
GOTO Conferences
16 HN recommender · 2019–2024
14 mo on HN"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
14 HN recommender · 2022–2026
13 mo on HN"Making Impossible States Impossible" by Richard Feldman
elm-conf
9 HN recommender · 2017–2026
3 comments from Hacker News
I found this talk by edward kmett incredibly helpful[0]. I kept rewatching parts of it bit by bit until I managed to absorb it all (there is a lot of information for a beginner) but I found it hugely helpful and mind-blowingly powerful. [0] ▶ this video
"The best forms of language advocacy probably involve showing the great things you've done with a language and forgetting about comparisons to the competition." Great things the parent has done with the language: ▶ this video
If you want to work in an environment where a lot of people are thinking like this routinely, instead of a few lone voices in a vast sea of otherwise uninterested people, the Haskell community is doing a lot of work in this area, and able to move much faster since it's so much easier in Haskell than C++ templates (which isn't really a criticism of C++ templates, a lot of their capabilities are accidental rather than intended). This is why the Haskell community talks so much about monoids and applicatives and semigroups and a variety of other interesting structures in that area (and no, I did not forget to say monad, that structure is actually uninteresting here because it is too powerful). I believe the Fortress language is also doing some work here. A sample of the interesting sort of algorithm work that you can do when you think this way: link Edit: See also the Typeclassopedia: link And if you're really interested and want to take it hardcore, Edward Kmett's video on his lens library walks through how you can derive it with this sort of logic: ▶ this video