~/talk

Programming a Language

slides:none on file

Builds an interpreter (not a parser) in Scala that starts from numbers and addition and grows into booleans, if/else, AST as a recursive sum type, let-bindings implemented with an environment-as-stack using eager evaluation, and functions implemented as values that close over their defining environment. Examples run and match the formal rules: 2+3 → 5, if true then 1 else 2 → 1, lexical scoping yields 3 not 4, function application yields 4. Error cases produce runtime type errors.

AI-written summary · about

  1. 0:00Creating a programming language
  2. 2:27What is a programming language
  3. 4:31AST for source code
  4. 11:53Adding conditionals
  5. 18:38Variable bindings
  6. 24:55Lexical scoping and environments
  7. 28:48Functions as values
  8. 35:13Key takeaways
~/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.