~/talk

Monocle 3: a peek into the future

Talkat Scale By the Bay 2020 · on Thursday, 2020-11-12· at 16:00· functional, Online· [scala, functional-programming]
slides:none on file

Explains concrete Monocle 3 changes: a focus macro that generates lenses/prisms/indexes from a dot-path (IDE-completion friendly) and runs only on Scala 3, a monocli prototype, and a plan to add previously-rejected combinators like zip/filter/withDefault. Argues these simplify boilerplate and onboarding, accepts occasional law-violating edge cases but documents them, and asks for community contributions; demonstrates the macro approach on nested case classes, maps and enums and shows it compiles and produces the expected get/replace behavior.

AI-written summary · about

  1. 0:00Intro
  2. 0:16Afp-tower
  3. 1:01Julien Truffaut
  4. 1:42Agenda
  5. 2:32Mutation
  6. 3:43FP uses immutable data
  7. 5:03Concurrency
  8. 8:42Simple case
  9. 9:47Enumeration
  10. 13:14Data structure
  11. 15:36Optics: Lens, Optional, Traversal, Prism, Iso,...
  12. 16:19Optics composition
  13. 18:07Why optics are not popular in Scala?
  14. 18:55Problem #1: Optics creation
  15. 20:27Monocle 2 macros
  16. 21:12Solution: Focus macro (Scala 3)
  17. 23:27Problem 2: Lawfulness
  18. 24:15Problem 2: Expected behaviour
  19. 25:40FP library design principle
  20. 26:45Zip can break the expected behaviour
  21. 28:42FP DEVELOPERS
  22. 29:04Solution: Documentation
  23. 29:24Monocle 3: Focus on user experience
  24. 30:42Join the team
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.