Programming with Less Than Nothing

Overall reaction & style

  • Many readers found the piece very funny and delightful, especially the dark punchline (“Dana is dead”) and the escalating absurdity of the code.
  • Others felt the narrative framing (interview fanfic) was distracting, self‑congratulatory, or “Reddit and everyone clapped”-ish.
  • Several people noted clear inspiration from an earlier “rewriting/reversing the technical interview” series; some saw it as affectionate fanfic, others wished the influence were more foregrounded (though it is in the references).

Explainer vs performance

  • Some commenters praised it as an “awesome explainer” of combinatory logic.
  • Others argued it’s more a virtuoso stunt than a pedagogy: very little step‑by‑step explanation, huge opaque final code block (~166 kB), and syntax highlighting literally breaking down.
  • That said, a few insisted that watching someone “show off” at a difficult topic can itself be a powerful way to learn.

Technical discussion: SKI, lambda, laziness

  • Multiple comments discuss how to encode S and K in JavaScript, issues with parenthesization, and how to adapt to eager evaluation.
  • Links and discussion point out:
    • Combinatory logic is actually more verbose than lambda calculus in bits, despite the joke about lambda being “bloated”.
    • Eager languages can simulate laziness by wrapping arguments (or via Y/Z‑like combinators plus indirection), but plain NodeJS will still blow the stack without something like the article’s lazy “Skoobert”.
    • In practice, compilers for functional languages often target a richer combinator basis or graph‑reduction machines (e.g., Haskell’s G‑machine).

“Why learn this?” vs “it’s just interesting”

  • One thread questions the article for not giving any concrete reason to study such a difficult, impractical system.
  • Replies split:
    • Some say the point is pure curiosity and beauty—like philosophy, esolangs, or cellular automata—and that’s enough.
    • Others emphasize conceptual value: seeing how universal computation emerges from extremely simple primitives; relating this to hardware, one‑instruction set computers, and compilation targets.
    • A few argue the article is written for people who already know they “fit the bill”; it’s not trying to convert the unconvinced.

Interviews, culture fit, and readability

  • Several commenters note that using SKI FizzBuzz in a real JavaScript interview would likely fail goal (2) of interviews: matching the company’s programming culture and conventions.
  • Others counter that being able to reason in SKI or Forth indicates deep graph‑shaping ability that’s valuable in domains like compilers.
  • A separate thread contrasts “mind‑bending” but opaque code with the best production code: straightforward, well‑documented, and making colleagues feel smart rather than lost.