~/talk

Functional Programming in 40 Minutes

Talkat GOTO Berlin 2018 · 2018-10-31..11-02· [functional-programming]
github:russolsen
slides:none on file

Functional programming centers on pure functions, immutable persistent data structures, and explicit bridges to the messy world like atoms and agents or queues that sequence side effects. Data structures use structural sharing (wide branching, e.g. 32) so copies are cheap; threads can’t corrupt shared state and a whole class of concurrency bugs disappears. Production code ends up as many small testable functions with a few protocols — example: Pedestal is ~18.7k lines with 944 functions, 28 protocols, 8 state bridges, showing the approach scales.

AI-written summary · about

  1. 0:00Start
  2. 3:12FORGET Everything You Know About Programming
  3. 8:54During the type erasure process, the Java compiler erases all type parameters and replaces each with its first bound if the type parameter is bounded, or Object if the type parameter is unbounded
  4. 21:40Copies Copies Copies
  5. 26:13EFFECTS
  6. 33:43Magic
  7. 33:56off-by-one errors
  8. 34:09REDUNDANT
  9. 34:53database is
  10. 38:5018,706 lines
  11. 39:1828 protocols
  12. 39:388 bridges to the stateful world
  13. 40:05944 functions
~/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.