ekmett/lens
Lenses, Folds, and Traversals - Join us on web.libera.chat #haskell-lens observed · 2026-08-28
Health v2 · maintenance only
76/100
- Activity 97
- Release rhythm 35
- Longevity 100
Flags: no_releases no_license
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 5152
- days_rel: n/a
- days_push: 20
- n_releases_24m: 0
Adoption not part of the score
2101 stars · 274 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
The canonical Haskell lens library providing families of lenses, isomorphisms, folds, traversals, getters, and setters for composable data access and manipulation. It is a mature, widely used package on Hackage maintained by Edward Kmett.
Use cases
- access and update nested data structures in Haskell
- compose getters and setters for immutable records
- traverse and fold over container elements functionally
- learn how van Laarhoven lenses work
- replace boilerplate record update syntax in Haskell
When to choose
- you are writing Haskell and need powerful, composable optics for data access
- you want the most feature-complete and battle-tested lens package on Hackage
When to avoid
- you work outside Haskell
- you want a minimal, lightweight optics library with fast compile times
- your team is new to Haskell and not ready for lens's steep learning curve
Facets
library · maturity stable
developer-tools programming-languages developer-tools cross-platform lenses functional-programming optics folds traversals haskell algorithms
2 sources
- readme: https://github.com/ekmett/lens · fetched 2026-08-28 · e27973cb7220
- homepage: http://lens.github.io/ · fetched 2026-08-29 · c95172bc6d3b
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| ekmett/lens | main | 76 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem