~/talk

Changing the Unchangeable: The Hows and Whys of Immutable Data Structures

Talkat RubyConf 2015 · 2015-11-15..11-17· [ruby, databases]
slides:none on file

Demo shows a Bloxorz solver and a Connect Four UI built on a Hamster-backed matrix gem and an Elm frontend, with the solver implemented as a breadth-first flat_map tree search. Persistent lists are singly-linked; vectors use a persistent bit-partitioned trie that shares nodes so updates copy only a few nodes. These structures are lazy and thread-safe, give cheap diffs and fast immutable updates, and enable time-travel debugging workflows (Redux + Immutable.js, Datomic-style history, hot-reload rewind shown working).

AI-written summary · about

  1. 0:00Intro
  2. 5:22Persistent Data Structures
  3. 11:14Boxers
  4. 14:50Tree Search
  5. 18:01Lazy Algorithms
  6. 22:37Demonstration
  7. 26:18Demo
  8. 28:21Discussion
  9. 30:54Elm
~/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.