An awesome video which changed my perspective towards lambda calculus and programming in general: programming with nothing: ▶ this video
in “A Short and Painless Introduction to the Lambda Calculus [pdf]” · View on HN
Ruby Manor 3 - Programming with Nothing by Tom Stuart on HackerTube: recommended by 4 Hacker News commenters across 4 separate months, 2013–2019.
talk · intermediate · evergreen
Tom Stuart's Ruby Manor 3 talk builds FizzBuzz using nothing but Ruby lambdas, working through Church encodings of numbers, booleans and data structures. It is a hands-on introduction to lambda calculus.
Strongly recommended in lambda calculus and Y-combinator threads as a mind-expanding half hour that clarifies the ideas.
“An awesome video which changed my perspective towards lambda calculus and programming in general”
5 Hacker News comments link this video. Each one links back to its thread.
An awesome video which changed my perspective towards lambda calculus and programming in general: programming with nothing: ▶ this video
in “A Short and Painless Introduction to the Lambda Calculus [pdf]” · View on HN
For anyone who finds this interesting, I cannot recommend enough investing a half hour in watching the "Programming With Nothing" talk: ▶ this video In it, the speaker implements fizzbuzz using only lambda calculus (making significant use of church encoding).
in “Church Numerals” · View on HN
If you are curious about the topic, I strongly recommend watching these videos: Y Not- Adventures in Functional Programming by Jim Weirich [link] Programming with Nothing by Tom Stuart ▶ this video
in “What is a y-combinator? (2008)” · View on HN
There's a good elaboration of it in Tom Stuart's "Programming With Nothing" talk[0], in which he does a lambda calculus implementation of FizzBuzz in what's left of Ruby if you leave everything out except the things strictly necessary to do lambda calculus - with the exception of what you could call C-style macros (basically text search-and-replace, so you can call a section of code FOO and just type FOO everywhere you would have typed that section of code). There's also the little matter of output - you need to translate the resulting Church numerals into readable form for those who can't see that you've obviously produced correct FizzBuzz. There's a good enough explanation that what needs to be sort of hand-waved for brevity (things that are shown but not really explained in detail) aren't entirely opaque - you will be able to figure it out. Keep in mind, too, that the lambda calculus is a lot like machine language in one respect - the same little bit of "code" can have more than one meaning to the programmer even if the "machine" is doing exactly the same thing. [0] ▶ this video
in “FizzBuzz in ten languages” · View on HN
The same thing, but in Ruby stabby-proc notation (from 2012) by Tom Stuart: ▶ this video Well, perhaps not exactly the same thing, but only because Ruby requires the Z-combinator due to applicative order.
in “Whiteboard problems in pure Lambda Calculus” · View on HN