"Programming Should Eat Itself" by Nada Amin

Strange Loop Conference3 HN recommenders · 2015–2024
43K views · talk · evergreen · Uploaded 2014-09-19

Nada Amin's Strange Loop talk on programming languages that build on themselves, centered on towers of interpreters and nestable interpretation in Scheme. She shows how interpreters can be stacked and collapsed.

HN recommends it as a quick, wonderful look at infinite towers of interpreters and what they make possible.

Watch on YouTube

5 comments from Hacker News

@juliangamble2015 · in “An Incremental Approach to Compiler Construction (2006) [pdf]”

Nada Amin, who gave the keynote at Strange Loop in 2014 "Programming Should Eat Itself" [VIDEO] has worked through the implementation [LINK] and provided the corresponding workshop documentation in her github account. [LINK] She's also been involved in contributing to the next generation Scala compiler (Dotty).

@minsight2017 · in “Collapsing towers of interpreters [pdf]”

This is a very intereresting video featuring one of the authors (Nada Amin). Strangely enough, I watched it a few hours ago. It's a quick overview of the "tower of interpreters" idea and some possibilities that it brings. [VIDEO]

RecommendsView on HN
@tosh2018 · in “Rich Hickey on the Power of Lisp REPLs (2015)”

> […] it is important to think broadly about the power of multiple sessions, even from the same user. At first we are talking about 2 sessions, for human and IDE. But it is quite common in rich Common Lisp IDEs like Lispworks for people to have multiple listener (REPL) sessions open at the same time (against the same runtime). You can launch long running processes that produce streaming output, switch to another listener and continue interaction and development, have separate listeners for separate contexts/state/command-history etc. There's a lot to Lisp development that's not RPC. And of course a socket REPL server could support multiple simultaneous users, where 'users' might be programs. > Have you ever worked with an environment like Lispworks or Allegro? If not, I would definitely recommend trying it. […] > [LINK] > [LINK] > Note multiple listeners, data inspectors and more. Maybe not the latest GUIs, but the capabilities should be a source of inspiration for any Clojure IDE. […] > Here's a wonderful demonstration of the power of nestability: > "Programming Should Eat Itself" by Nada Amin [VIDEO]

RecommendsView on HN
@Zambyte2023 · in “I have written a JVM in Rust”

This talk isn't about VMs, but it is about an infinite tower of interpreters. You may find it interesting: [VIDEO]

RecommendsView on HN
@freethejazz2024 · in “Explorative Programming”

Another take on non-linear explorational programming is Black, which is an extension of scheme. Different motivations, but you might find something interesting there. How I was exposed to it: [VIDEO]