News for hackers. Stuff that matters.
Re:Lambda Calculus by jacquesm on Sunday October 11, 2009 @09:39PM (#875701)
I posted this because I'm trying to get my head wrapped around this subject and it is one of the most concise and clear explanations that I've found so far.

I want to get a more complete understanding of functional programming, and that seems to start with understanding the lambda calculus.

Re:Lambda Calculus by camccann on Sunday October 11, 2009 @09:51PM (#875722)
Understanding modern functional programming via pure lambda calculus is somewhat like understanding C++ via raw assembly. Which is to say, you'll have a great low-level understanding to build on but a long, long road ahead.

It is a lot of fun, though. I once spent a delightful afternoon puzzling out how to subtract Church numerals knowing only that it was possible to do so, having previously worked out the far simpler addition and multiplication functions. Highly recommended!

Re:Lambda Calculus by jacquesm on Sunday October 11, 2009 @09:59PM (#875734)
I figure you can't really say you understand a programming language until you can re-implement it from the ground up.

So that's my intermediate goal.

Spot on about C/C++ through the assembler route by the way, if there is one excellent way to really grok those then it is via the -S flag.

Re:Lambda Calculus by fogus on Sunday October 11, 2009 @10:48PM (#875818)
Implementing a language is complicated enough that by doing so you fully learn the implemented language AND the language used for implementation. Win-win!
Re:Lambda Calculus by Agent101 on Monday October 12, 2009 @05:31AM (#876351)
I find lambda calculus needed when you get into some of the subjects that functional programming languages are a gateway to. It definitely helps when trying to read the Coq manual.
Re:Lambda Calculus by baddox on Sunday October 11, 2009 @11:45PM (#875931)
I don't know that the lambda calculus is necessary for functional programming. It can't hurt, but I don't think it's vital. I basically just think of the l.c. as another equivalent model for general purpose computing, just like Turing machines.