TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Where do I go to learn more about the lambda calculus?

12 pointsby mnemonicslothalmost 5 years ago
Scheme and Haskell are two of my favorite programming languages, and I know both are implementations of the lambda calculus. I&#x27;d like to learn more about that, but I haven&#x27;t been able to find good sources. Most of the time I do find it mentioned, it&#x27;s mentioned in passing, for example in SICP or the Little Schemer.<p>Some things I&#x27;d like to know:<p>- How to construct lambda functions from Turing machines and vice versa<p>- How to think about the Y-combinator (this is now almost un-googleable)<p>- What variants of the lambda calculus have been constructed and what their properties are<p>- How lambda functions relate to functions in the mathematical sense. Are they the same? Can you call them on real numbers? Are they continuous? Etc<p>Extra points if you can recommend a full theoretical treatment. I&#x27;m interested in really digging in to this topic.

5 comments

tgflynnalmost 5 years ago
Those topics fall under the general heading of Mathematical Logic.<p>Wikipedia is usually a pretty good place to start for any such question:<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Lambda_calculus" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Lambda_calculus</a><p>there are a lot of external links and references there.<p>I don&#x27;t know if there&#x27;s a lot of work still being done with the original untyped lambda calculus but typed lambda calculi (or analogous models), on which I believe Haskell is based, are another story.<p>You may also find this interesting:<p><a href="https:&#x2F;&#x2F;softwarefoundations.cis.upenn.edu&#x2F;current&#x2F;lf-current&#x2F;index.html" rel="nofollow">https:&#x2F;&#x2F;softwarefoundations.cis.upenn.edu&#x2F;current&#x2F;lf-current...</a><p>It&#x27;s an introduction to the coq proof assistant which is based (at least to the best of my understanding) on a kind of typed lambda calculus. In the first few chapters you will learn how to construct the natural numbers and formally (ie. in a machine verifiable way) prove theorems about them.
cannabis_samalmost 5 years ago
It’s not exactly what you’re asking for, but have you come across the book Programming Language Foundations in Agda?<p><a href="https:&#x2F;&#x2F;plfa.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;plfa.github.io&#x2F;</a><p>The second part discusses lamda calculus and formalizes a version in Agda. The first part should introduce enough Agda to understand the second part.<p>If you like Haskell and Scheme, I think you would enjoy Agda as well. It’s (to simplify a lot) lambda calculus extended with dependent types, which imho feels more consistent and cohesive to understand than Haskell and all the various ghc extensions (for me at least, it was easier to understand the advanced extensions after having dealt with a fully dependently typed language)<p>I also think Benjamin Pierce’s Types and Programming Languages ( <a href="https:&#x2F;&#x2F;www.cis.upenn.edu&#x2F;~bcpierce&#x2F;tapl&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.cis.upenn.edu&#x2F;~bcpierce&#x2F;tapl&#x2F;</a> ) could be useful to you. It introduces lambda calculus as the computational foundation, and then builds various type theories on top of that.
hackermailmanalmost 5 years ago
Type &#x27;cmu lecture notes lambda calculus&#x27; into google. Or <a href="https:&#x2F;&#x2F;www.cs.cmu.edu&#x2F;~rwh&#x2F;pfpl&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.cs.cmu.edu&#x2F;~rwh&#x2F;pfpl&#x2F;</a> and his various lectures from OPLSS on YouTube too. The original Church thesis is on google scholar.<p>Look on arxiv <a href="https:&#x2F;&#x2F;arxiv.org&#x2F;abs&#x2F;1503.09060" rel="nofollow">https:&#x2F;&#x2F;arxiv.org&#x2F;abs&#x2F;1503.09060</a>
smlckzalmost 5 years ago
Y combinator is a fixed-point combinator. [1]<p>[1] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Fixed-point_combinator" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Fixed-point_combinator</a>
mindcrimealmost 5 years ago
<a href="https:&#x2F;&#x2F;hn.algolia.com&#x2F;?q=%22lambda+calculus%22" rel="nofollow">https:&#x2F;&#x2F;hn.algolia.com&#x2F;?q=%22lambda+calculus%22</a>