R
Rainer Grimm
Hello,I think it's relatively difficult to get a feeling what a are the key
points behind functional programming. So I think you should start
explaining the concepts behind functional programming. A few ideas.
- higher order functions
- first class functions
- currying
- pure functions
- list processing
- lambda functions
- recursion instead of iteration
- pattern matching
And that should end with the three guys (map, filter and reduce ) as
building blocks of functional programming. And that is a good point to
introduce list comprehension. Because it's only syntactic sugar for map
filter. But what kind of sugar. It's very impressive. Thats my typical way
to introduce it in seminars.
Now it's a good time to explain, what's special in python with
functional programming. (A lot if you compare it with haskell)
I wrote an article about your topic. You have only to learn german.
About the concepts:
http://www.linux-magazin.de/Online-Artikel/Funktionale-Programmierung-1-Grundzuege?category=0
What's special about Python:
http://www.linux-magazin.de/NEWS/Online-Artikel-Funktionale-Programmierung-in-Python?category=0
Greetings from Rottenburg,
Rainer
points behind functional programming. So I think you should start
explaining the concepts behind functional programming. A few ideas.
- higher order functions
- first class functions
- currying
- pure functions
- list processing
- lambda functions
- recursion instead of iteration
- pattern matching
And that should end with the three guys (map, filter and reduce ) as
building blocks of functional programming. And that is a good point to
introduce list comprehension. Because it's only syntactic sugar for map
filter. But what kind of sugar. It's very impressive. Thats my typical way
to introduce it in seminars.
Now it's a good time to explain, what's special in python with
functional programming. (A lot if you compare it with haskell)
I wrote an article about your topic. You have only to learn german.
About the concepts:
http://www.linux-magazin.de/Online-Artikel/Funktionale-Programmierung-1-Grundzuege?category=0
What's special about Python:
http://www.linux-magazin.de/NEWS/Online-Artikel-Funktionale-Programmierung-in-Python?category=0
Greetings from Rottenburg,
Rainer