Functional Programming is considered to be difficult. I know some who started with it, but were intimidated by the language used. And, by experience, it sure is a lot intimidating if you come with a imperative programming background.
So, here is a list of articles that perhaps provide a gentler introduction for the rest of us:
- Functional Programming For The Rest Of Us
- Why Functional Programming Matters
- Back to the Basics of Functional Programming
- Functional Programming on Haskell Wiki
- Can Your Programming Language Do This?
- The essence of functional programming
There are a lot of languages you can start with to understand functional programming, like Haskell, Scheme, Erlang, Scala, F#. Or if you think this is taking it too far, you can find functional programming a lot closer than you can think.
- Functional Programming How to in Python 3.0
- Query Composition using Functional Programming techniques in C# 3.0
- Functional Programming with Groovy
- Explore functional programming techniques in Ruby
- Functional Programming with a side of Perl 6
- Higher Order PHP
- Higher-Order Perl, as mentioned by Shlomi Fish
- Partial Function application in PHP
You will also find some libraries that can help you start functional programming in language of your choice:
I am sure I have missed some references, I will add them as and when I find/remember more. Feel free to add to this.