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

I think you've missed the point of OPs question - he's not trying to argue that lisp isn't useful over Lambda Calculus from a practical perspective, but asking how both relate to the "fundamentals of computing" perspective.

So to answer your question, nothing (in this context), because the Turing machine is a more useful model for thinking about computation itself.

Perhaps the same might apply to lisp / lambda calculus, although I suspect the answer here is that it's just a lot harder to right a self-interpreter in lambda calc.



> it's just a lot harder to right a self-interpreter in lambda calc.

Here's one for the http://en.wikipedia.org/wiki/Binary_lambda_calculus, all of 29 bytes long, including parsing:

    0101000110100000000101011000000000011110000101111110011110
    0001011100111100000011110000101101101110011111000011111000
    0101111010011101001011001110000110110000101111100001111100
    0011100110111101111100111101110110000110010001101000011010


> So to answer your question, nothing (in this context), because the Turing machine is a more useful model for thinking about computation itself.

This isn't obvious to me. It seems to me that a TM is more useful for thinking about computation from an operational perspective. But this isn't the only, or arguably even the most effective, way to think about computation. The lambda calculus is much more useful for thinking about computation from a denotational perspective.


I agree completely, and didn't mean to compare the Turing machine to Lambda calculus, only to the C language (it made more sense before the context above was deleted).




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

Search: