~/talk

Refactoring Recursion

Talkat LambdaConf 2017 · 2017-05-25..05-27· [frontend-architecture]
slides:none on file

Claim: recursion schemes specialized to List let you refactor recursion out of functions without needing Fix for most cases. Demonstrations use concrete tools: fold/right, unfold, cata/anamorphism, ana/para/histo/futu variants, with runnable examples (sum, length, replicate, fibs, merge, sliding windows, insert, swap). About a dozen schemes appear in 50 minutes; slides are executable and examples compile and run. When deeper needs arise, Fix plus deriving Foldable/Traversable shows how to refactor recursion out of data.

AI-written summary · about

  1. 0:00Intro
  2. 1:45Why Refactor
  3. 3:30Recursion
  4. 4:35Explicit recursion
  5. 5:42Fold recursion
  6. 7:08Length recursion
  7. 9:02Recursion Explicit
  8. 9:32Catamorphism
  9. 12:51Filter
  10. 19:56Replicate
  11. 21:14Computing Fibs
  12. 23:06Section in Haskell
  13. 24:18Arrows
  14. 26:04Merging Lists
  15. 28:05HighLowmorphisms
  16. 30:02HighLowmorphism
  17. 33:36Deforestation
  18. 34:18Pair amorphism
  19. 35:57Paramorphism
  20. 38:55Comorphism
  21. 41:12Insert Element
  22. 45:08Listmorphisms
  23. 47:11Histomorphism
  24. 47:34History
  25. 50:43Histogram
  26. 52:04Fibs
  27. 55:58Fix
  28. 56:51Swap
~/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.