The deep link equating math proofs and computer programs
Okay. Today I'll be the idiot.<p>I don't get it. Or rather, I don't get the significance of the Curry-Howard Isomorphism. Questions:<p>1) Is there an example of a proof and its corresponding program that makes you say "whoa, trippy, I didn't expect those to be related"? Like, yeah, an Int -> Boolean function "proves" you can construct a Boolean from an integer, but ... so what? What would a non-trivial proof (say, on the order of the Pons Asinorum) look like as a program?<p>2) Are the "programs" referred to here to merely pure functions (i.e. side effect-free, global state-free ones)? It <i>sounds</i> like it is based on lines like this:<p>>When a computer program runs, each line is “evaluated” to yield a single output.<p>That ... seems to cram  "computer programs" into some kind of Procrustean bed <i>unless</i> we're taking about pure functions. But then it also talks about how CHI has applications in verifiable programs, which, I'm told, <i>can</i> reason about side effects.<p>Feel free to call me an idiot, as long as you can also inspire an aha-moment.