~/talk

Lost in Transduction

Talkat :clojureD 2017 · on Saturday, 2017-02-25· [functional-programming, distributed-systems]
links:none on file
slides:none on file

Argues transducers cut allocations and run faster than earlier sequence/reducer approaches but are fiendish to implement: reducer functions must use mutation for internal state, must check and propagate reduced values carefully to avoid nested reduced bugs, and must call underlying completion correctly. Shows xforms extensions that make transducers also act as transducing contexts, with a by-key implementation about 30% faster than a naive group-by, and describes a Spark library (Polarkeg) that dynamically ships bytecode to clusters so transducers run on RDDs without a compile step and live coding works.

AI-written summary · about

  1. 0:00Intro
  2. 1:07An iteration story
  3. 6:45Clojure Rationale
  4. 8:25Transducing contexts
  5. 10:12chunked vs transducers
  6. 12:35Informally
  7. 13:13Clojure transducers
  8. 13:44The identity transducer
  9. 14:52Boilerplate init
  10. 16:42Chain completion
  11. 21:25The rf is a lie
  12. 22:37xforms: The Lost Levels
  13. 23:17xforms transducers
  14. 24:35x/partition new tricks
  15. 27:481-pass rollup (advanced)
  16. 28:10Advanced example
  17. 29:02Powderkeg
  18. 30:54Thank you!
~/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.