~/talk

When all the nails are trees, the hammer you need probably looks like a chainsaw

Talkat Scala.IO 2024 - Nantes · 2024-02-15..02-16· [frontend-architecture]
links:none on file
slides:none on file

Claim: using a Rose Tree gives listlike operators on recursive data so you stop hand-rolling traversal for JSON J schemas and AST-like problems. Implementation detail: an alpha-level Scala port (published to Maven Central yesterday) provides map filter collect foldLeft foldRight and cats Traverse so errors and IO accumulate into Either or effectful trees. Practical notes: traversal guarantees foldLeft guarantees parents before children and foldRight the opposite, no flatMap is provided and API is unstable.

AI-written summary · about

  1. 0:00Trees and chainsaws intro
  2. 1:30How I became tree expert
  3. 2:36Tree traversal and recursion
  4. 4:24Map and filter for trees
  5. 5:31Rose trees and benefits
  6. 6:58What is a rose tree
  7. 8:03Chainsaw library intro
  8. 8:45List to tree operators
  9. 9:50Filtering trees pitfalls
  10. 10:56Collecting tree values
  11. 11:37Folding trees left-right
  12. 13:25Folding trees right-left
  13. 13:45Traversing trees with effects
  14. 15:12Conclusion and future ops
  15. 17:22Q&A: Fold left vs fold right
  16. 18:50Q&A: Rose vs binary trees
  17. 19:35Q&A: Rose tree labels
  18. 21:03Q&A: Type classes in production
  19. 22:26Q&A: General tree library plans
  20. 22:47Q&A: Type class instances
  21. 23:30Q&A: Pre-order vs depth-first
~/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.