Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The thing that blew my mind was that there are some mathematical programming languages where the point is not to ever actually run the program. Just type-checking it is enough to prove the result. (In the "programs are proofs" sense.) In these languages, it's important not to allow infinite loops because you will never test the code.

Even though there's a correspondence, there's always going to be a difference between writing a program so that you can actually run it and writing proofs, where you don't, and ridiculously inefficient algorithms don't matter at all, so long as they don't diverge.




https://aphyr.com/posts/342-typing-the-technical-interview

>"You… do realize that the type system is meant to constrain values, right?”

>“No,” you inform him, matter-of-factly. “No, that doesn’t sound right.”




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: