Perhaps this is just a skill issue, but I’ve seen a lot of good programmers get CH-pilled and then waste a lot of time trying to think of the types of their working programs as rich propositions or trying to encode complex proofs about their programs in the types.
The Curry-Howard correspondence is only one of many lenses we can use to view the relationship between things and facts. Different lenses characterize different approaches to foundation: - Propositions are basic (single-sorted logics, ZF) - Types are basic, some types are propositions (Homotopy Type Theory) - Propositions and types are the same (Martin-Löf’s Type Theory) - Propositions and types are different but equally basic (Logic-enriched Type Theory) Shulman explains how the Axiom of Choice is true some but not in others, arguing that in certain respects, the HoTT’s way is the most “natural”: golem.ph.utexas.edu/category… Adams & Luo argue instead for the practical virtues of making propositions and types completely separate: arxiv.org/html/0809.2061v3

Sep 24, 2026 · 4:50 PM UTC

9
1
38
7,485
With the right languages and provers, I think we’d see a lot more proofs written *about programs*, not *as the program itself*. Program extraction might have some utility but I suspect it’s mostly a neat trick.
2
14
408
Sort replies: Relevant Recent Liked
Replying to @shlevy
I'm kind of CH-antipilled, like they have a mathematical equivalence, but then in practice the equivalence is confusing and you want to hide it. like in Lean you use tactics to construct proof terms, not program terms, that would be weird.
8
228
Replying to @shlevy
It’s a skill issue
1
4
50
Replying to @shlevy
Discretion is the better part of valor here. You don't need super precise types for your HTML parser or whatever.
2
231
Replying to @shlevy
No, even mathematicians think C-H euphoria is silly liamoc.net/forest/loc-000S/i…
3
333
Replying to @shlevy
A subset of developers love the puzzle of types, how do you map something to that world. These are the people who self select into it. Rust also has its version of this where doing basic efficient concurrency is so hard that people write thesis about it, but they like it
1
217
Replying to @shlevy
They have the wrong mental model for where bugs come from. How good of a programmer are we talking about? (tbf I’d argue that types encapsulate complexity, which is what actually reduces real bugs)
112
Replying to @shlevy
Why do you think it’s a waste of time?
100
Replying to @shlevy
That’s really silly lol
1
67