Discussion forum for David Beazley

Lambda Calculus - PyCon 2019

#1

I gave a 3-hour tutorial on Lambda Calculus at PyCon 2019. Here is a link to the screencast:

Here is a link to the official conference video:

Why this topic of all possible things to talk about? That’s a somewhat involved story, but I’m always interested in learning about new things that I just don’t know about. A few years back I started teaching the SICP course. Many of the of the examples from SICP are inspired by the lambda calculus so I thought it might be interesting to go off on a side-excursion to dig into a bit more. It turned out to be a lot more weird, fun, and interesting than I ever imagined. So, naturally it seemed to be a perfect tutorial topic to submit to PyCon–never mind the fact that it has almost nothing to do with Python.

Anyways, have fun watching. I welcome any feedback here.

3 Likes
#2

It would be genuinely interesting to know more about your custom environments you use for your talks.

1 Like
#3

Thanks, David. This talk is crazy along with your legendary live coding delivery. I’m sipping these 3 hours slowly allowing the stuff to sink in.

#4

The “custom environment” is a gradual evolution of some presentation concepts I’ve been fooling around with since the 2016 talk “Fear and Awaiting in Async” from PyOhio (https://www.youtube.com/watch?v=Bm96RqNGbGo).

Without getting into too much detail here, the presentation environment for this tutorial is iTerm2 on a Mac running in full-screen mode. One interesting feature of iTerm2 is that it has the ability to display inline images directly in the terminal window. All of the “slide images” are done using that. The editing/REPL environment is a completely custom text-editor written entirely in Python. That editor has a number of operational modes to run interactive sessions, rewind commands, and to navigate around in a way that might be useful for live-coding and experimentation. It’s a slowly evolving side project mostly.

One of the reasons I used it for this tutorial is that I’ve found lambda calculus to be a very difficult to topic to fully wrap one’s brain around. I think it needs to be taken slow and with time for reflection and pondering. The custom environment allowed for the simultaneous display of a “slide”, an editor for typing code/notes, and a REPL for trying things out without any chaotic “window switching” (i.e., me rapidly switching between these three things in three separate windows for example).

1 Like
#5

It is really interesting, you are da man!