Please log in to watch this conference skillscast.
Lenses have been called “jQuery for data types”: they give you a way to poke around in the guts of some large aggregate structure. Lenses compose (so you can make big lenses by gluing together little ones), and they exploit type classes to allow a remarkable degree of flexibility (get, set, fold, traverse, etc).
YOU MAY ALSO LIKE:
- Haskell eXchange 2022: Online Conference (Online Conference on 8th - 9th December 2022)
- Haskell eXchange 2022: In-Person Conference (in London on 8th - 9th December 2022)
- Keynote — Provably correct, asymptotically efficient, higher-order reverse-mode automatic differentiation (SkillsCast recorded in November 2021)
- Haskell at Work (Online Workshop on 30th January - 2nd February 2023)
- Haskell eXchange 2022: Novice Track (Online Conference on 7th December 2022)
- What Logic can Teach Us, Scala Programmers (SkillsCast recorded in October 2022)
- Haskell: Why and How the External STG Interpreter is Useful (SkillsCast recorded in December 2021)
LENSES: COMPOSITIONAL DATA ACCESS AND MANIPULATION.
Simon Peyton Jones, MA, MBCS, CEng, graduated from Trinity College Cambridge in 1980. Simon was a key contributor to the design of the now-standard functional language Haskell, and is the lead designer of the widely-used Glasgow Haskell Compiler (GHC). He has written two textbooks about the implementation of functional languages.
After two years in industry, he spent seven years as a lecturer at University College London, and nine years as a professor at Glasgow University before moving to Microsoft Research (Cambridge) in 1998.
His main research interest is in functional programming languages, their implementation, and their application. He has led a succession of research projects focused around the design and implementation of production-quality functional-language systems for both uniprocessors and parallel machines.
More generally, he is interested in language design, rich type systems, software component architectures, compiler technology, code generation, runtime systems, virtual machines, and garbage collection. He is particularly motivated by direct use of principled theory to practical language design and implementation -- that's one reason he loves functional programming so much.