HackerTube

THE VIDEO SHELF · functional programming in games

John Carmack's keynote at Quakecon 2013 part 4

Part 4 of John Carmack's QuakeCon 2013 keynote, covering OpenGL, functional programming, Haskell, Lisp and Scheme, typing, multithreading, events and garbage collection.

Why HN readers recommended it

Cited again and again as Carmack's key public statement on functional programming and purity in game development, plus his remarks on garbage collection.

This is a summary from the source dataset, not an endorsement by Hacker News or the video creator.

Video & recommendation details

Creator / channel
Kostiantyn Kostin
Topic
functional programming in games
Format
talk
Level
intermediate
HN recommenders in dataset
5
HN mentions in dataset
19
Recommendation years in dataset
2013–2025

These counts and years describe the included Hacker News records; they are not YouTube views or the video’s publication date.

From the original HN conversations

Excerpts from the recorded comments. Follow each source for the full comment and surrounding discussion.

  • Raymond Hettinger's talk about good code reviews -- [LINK] Carmack's talk about functional programming and Haskell -- [VIDEO] Jack Diederich's "Stop Writing Classes" -- [LINK] All with a good sense of humor.

    sssilver on Hacker News · 2016-10
    In Ask HN: What's your favorite tech talk?
  • The use of monads is a side-effect (ha!) of committing to purity throughout a language, and that's what FP is being equated to: pure statically-typed FP. (You can argue about how justified that is, of course. I'm not going into that, but you might want …

    mrkgnao on Hacker News · 2017-08
    In Elm in Production: 25K Lines Later
  • What you describe above is similar to what Carmack discussed at his QuakeCon keynote several years back when toying with a game engine on Haskell. Very interesting talk, [VIDEO]

    akmiller on Hacker News · 2017-09
    In Global Mutable State

Summaries, classifications and recommendation records are from the HackerTube source dataset. Read about this library and its limitations.