[ Content | View menu ]

Functional Programming

Mark Mzyk | December 17, 2007

Recently, I’ve been exposed to the ideas of functional programming.  I haven’t done any actual programming with a functional language (yet), but the ideas have come to fascinate me.  Closures captured my attention for a while, then monads came up.  I still have no firm idea what monads are, but they seem cool.  I’ll keep reading about them until I understand them.

Here is an article I thought was an excellent overview, in layman’s terms, of functional programming:  Monads, Yet Again

Ignore the fact that the title mentions monads – the article is more about functional programming and only briefly touches on monads; you don’t need to understand monads to understand the article.

The article may miss some important points of functional programming, I don’t know.  I don’t have the experience to know, yet.  If you have a good definition of functional programming, or more articles I should read, leave a comment.

One thing about functional programming that scares me:  math comes up, a lot.  At least, that’s what I’ve noticed.  Math gets mentioned a lot more with functional programming than it does with object oriented programming, the paradigm I’m used to.  Maybe this is because functional programming is much closer to academia currently than object oriented programming is.  Maybe I just haven’t noticed the math that underlies object oriented programming because nobody appears to be talking about it (at least any more, maybe they once did).  Whatever the case, I’ve forgotten a lot of math.  I should have worked a bit harder in all my calculus classes in school.  I have a lot of catching up to do if I’m really going to understand functional programming.