~/talk

The Tricks of Game Programming in a Pure Functional Language

TalkinDutchat LambdaConf 2019 · 2019-06-05..06-07· [creative-coding]
slides:none on file

A recreation of Boulder Dash in Elm is used as a tiny game engine to run cellular automata and to solve Advent of Code 2018 day 15. The implementation uses a component-based update system that composes immutable transforms, JSON-defined levels and assets for loading/sharing content, and canvas rendering with actor indexing so only relevant actors update. Performance techniques are discussed for handling thousands of actors and tradeoffs between fixed timesteps, browser animation frames, and per-actor update costs.

AI-written summary · about

  1. 0:00Functional game programming
  2. 4:52Pure functional games
  3. 8:35Compiler errors
  4. 13:16Time management
  5. 19:00Model-view-update
  6. 24:47Entity component system
  7. 30:11Rendering in games
  8. 34:32Performance optimization
  9. 38:50Testing game code
  10. 40:40Q&A
~/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.