Rich Hickey, author of the Clojure language, gives what’s probably my all-time favorite keynote programming lecture. Yes, I have watched enough keynote programming lectures to have a favorite.
Back in September, I wrote a post outlining some naming conventions for functional programs written in PHP. Having written some more functional programs in PHP since then, I wanted to add 2 more tips to the original list.
I haven’t forgotten about this blog – between holiday break, a team retreat, and our office moving into a new space, I’ve been pretty distracted. I promise I’ll be back with more posts soon. In the meantime, here’s a great new talk on software development by Rich Hickey, the author of Clojure.
Monads are a super-important concept in functional programming, and in languages like Haskell, they’re pretty much the only way you can do things like I/O. Despite their role in functional programming, monads are a pain to explain and understand. Google “monad,” and you’ll see a ton of bloggers taking a crack at trying to break… Read more »
Lambda calculus is the foundation of functional programming, which is why functional programming languages love to include a λ in their logos. But what is lambda calculus, exactly? You could read the Wikipedia article on lambda calculus, but it’s pretty rugged and arcane — and I’ve linked to some pretty rugged and arcane Wikipedia articles… Read more »
One of the things I wasn’t terribly happy with in my recent screencast were the names of my functions. Though I try to write functional programs for the College whenever possible, I still write a lot of object-oriented code, and I struggle to translate the naming conventions. I realized it doesn’t really make sense to… Read more »
If you’re reading this blog, my hope is that you’re excited about functional programming and want to keep learning more about it. Functional programming can be a tough thing to wrap your head around, though — even for experienced coders — and you might be feeling wobbly about some of the concepts. You’re not alone!… Read more »
A few weeks ago, I was asked to write a script that would read a list of CAS users from a web service and generate an .htaccess file restricting a directory to just those users. I thought the script was a great example of using the functional transformation approach to programming, so here we are!… Read more »
The Microsoft Developer Network (MSDN) has a great series of articles contrasting object-oriented (imperative) programming with functional programming, and tips for transitioning to the latter: “This topic introduces the concepts and terminology of pure functional transformations. The functional transformation approach to transforming data yields code that is often quicker to program, more expressive, and easier… Read more »
This is part 3 of a series that began with Functional Web Programming, Part 0 — Introduction. What is immutable data? Let’s start with something we’re all really familiar with: an assignment statement. In PHP, we’d assign a value to a variable like this: $x = 9; Here’s some other things that we’re doing every… Read more »