~/talk

Functional Mechanical Sympathy

Talkat FUNARCH 2026 · on Saturday, 2026-08-29· [software-architecture]
slides:none on file

Argues that performance drives adoption: many popular JavaScript build tools are rewritten in Rust/Go rather than FP languages, and benchmarks show practical differences — Node ~25k req/s, Go degrades around ~70k, Elixir sustains ~100k requests per second. Shows FP can win when architecture matches hardware (Elm’s “blazing fast” rendering, Haskell’s Warp outpacing Nginx with multiple workers) and drills into hardware costs (1 ns L1 cache hit, 100 ns main memory, 17 ns mutex). Demonstrates bad FP examples (non‑tail recursive “quicksort”), Elm compiler heap‑allocation reductions, and runtime strategies like opportunistic mutation with ARC, borrow inference and defunctionalization to get imperative performance from pure code.

AI-written summary · about

  1. 0:00Welcome
  2. 1:07JS functional growth
  3. 3:56Rust and Go vs FP
  4. 7:07Performance critical
  5. 8:50Elm’s UI performance
  6. 10:37Go vs Elixir benchmarks
  7. 12:21Haskell’s Warp lead
  8. 14:29Heap allocations in FP
  9. 15:32Crafting compelling performance pitches for functional tools
  10. 17:15FP performance pitfalls
  11. 19:19Functional quicksort myth
  12. 22:49Persistent data structures wins
  13. 25:17Mechanical sympathy beyond FP
  14. 28:02Hardware vs abstractions
  15. 31:52Hardware costs numbers
  16. 37:50CPU cache hierarchy
  17. 39:56Prefetching patterns
  18. 41:38Linked lists slow?
  19. 51:39Informed choices
  20. 52:21Caching pure functions
  21. 53:24Effect wrapper costs
  22. 54:05Immutable trees vs maps
  23. 54:48Lazy evaluation costs
  24. 55:09Elm’s compiler optimizations
  25. 56:33Opportunistic mutation
  26. 59:42Borrow inference in Rock
  27. 1:01:04Resources
  28. 1:02:47Summary
  29. 1:04:54Q&A: Language design
  30. 1:07:15Q&A: Tooling
~/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.