Gerald Jay Sussman keynote and discussion
summary
Argues for “layering”: attach metadata like provenance and units layers to plain numeric values and have primitive operations propagate and combine those layers, including special rules (multiply by zero drops unrelated provenance, conditionals union predicate plus chosen branch). Implements it by building a continuation-augmented interpreter (continuation-passing style) that preserves tail-call optimization. Demonstrates a diode current example producing 1.2 mA and a factorial/fibonacci test (120 and 55) to show it works, notes remaining IO, IDE and ambiguity (amb) issues.
AI-written summary · about
chapters (15)
- 0:00Start
- 2:10Improve the Expressiveness of Programming
- 8:53Predicate Dispatch Extensible Generics
- 13:21Example of Layering
- 18:00Conditionals and Loops
- 22:13Summary
- 25:49Continuation Passing Interpreter
- 30:33Tail Recursion
- 33:47Extended Continuation
- 34:30Units Layer
- 40:51Emacs
- 41:07Org Mode
- 57:20Type Inference
- 1:04:37What Is the Story with the Hat
- 1:20:06How a Security Capability Layer Could Work
related talks
59mStanding on the Shoulders of Giants: Unlocking our Future
01h 01mA partial history of partial evaluation
31mThe Shoulders of Giants or Uncovering the Foundational Ideas of Lisp
59mKEYNOTE: The Shape of a Program
11m“Wheels within whiles!” or possibly “Whiles within wheels!”
33mUnlimited Register Machines, Gödelization and Universality
57mWhy Programming Languages Matter
01h 01mKeynote: Six Impossible Things
