[plt-scheme] The Lambda Calculus behind functional programming
On 8/29/07, Jos Koot <jos.koot at telefonica.net> wrote:
> For me discovering Lambda Calculus (and combinatory logic) was fabulous in
> itself. It is beauty.
> Whether or not it makes you a better programmer. I am inclined to think so, but
> I don't have any kind of evidence,
> Anyway, when my friends ask me what I am doing these days, I have much trouble
> making an understandable answer.
> My conclusion:
> 1: Lambda calculus is not the starting point of learning programming, I think.
I personally would tend to disagree with the idea of lambda calucus
not being a good starting point. (well, technically typing would be
the starting point :) . Why do you think it's not a good starting
point? Is it the lack of a good IDE? (which by the way, i have a
solution for ;) . I would agree that paper and pencil is not a good
way to start. But for the motivated learner, I think that the lambda
calculus with a few moddification could be a near optimal environment.
What are other peoples thoughts?
Corey
> 2: At some stage you wonder: what are the essential principles of programming.
> 3: At that point lambda Calculus may be an answer.
> 4: Wait for your students to ask the question before answering it
> 5: Not all of us can claim to be as clever as Socrates, but asking questions is
> a good method to make your students ask the right questions.
> 6: I know I have failed on this many times
> Jos Koot
>
>
> ((((lambda(x)((((((x x)x)x)x)x)x))
> (lambda(x)(lambda(y)(x(x y)))))
> (lambda(x)(write x)x))
> 'greeting)
> ----- Original Message -----
> From: "Grant Rettke" <grettke at acm.org>
> To: "PLT Scheme" <plt-scheme at list.cs.brown.edu>
> Sent: Wednesday, August 29, 2007 8:27 PM
> Subject: [plt-scheme] The Lambda Calculus behind functional programming
>
>
> > When I tell people that I'm learning Scheme the first thing they ask
> > me is "So have you learned lambda calculus?". I've learned enough to
> > say the words "lambda calculus" and that everyone says that lambda
> > calculus is the theoretical backbone of functional programming; but
> > that is it.
> >
> > The following question is a simple one, it makes no attempt to
> > generalize whether anything is worth learning, I think you get the
> > idea.
> >
> > So to revisit this again, what do you need to learn of the lambda
> > calculus relative to FP?
> >
> > What would you tell folks about who have never looked at FP when they
> > ask you about lambda calculus?
> > _________________________________________________
> > For list-related administrative tasks:
> > http://list.cs.brown.edu/mailman/listinfo/plt-scheme
> >
>
> _________________________________________________
> For list-related administrative tasks:
> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>
--
((lambda (y) (y y)) (lambda (y) (y y)))