I’ve been trying to make myself learn another programming language recently, because every problem is starting to look like a nail and my C compiler is the hammer. There’s been buzz around things like Rust, which is touted as a better language than C to do systems programming in. However I thought to myself, why not find a language with a completely different paradigm altogether? Functional languages, that sounds interesting!

So I started learning Haskell.

Haskell is named after mathematician Haskell Curry, who died in 1982 but has a sizable (and growing) fan club in the form of the functional programming community. His work on combinatory logic was the groundwork for functional programming; essentially eliminate the need for (mutable) variables, and work entirely with functions. Variables can be bound to a value, but it is then immutable; functions have no side effects in Haskell.

It’s only been a week, and I’m glimpsing into very unfamiliar territory. But it does feel like fun, so I’ll write about my Haskell journey from time to time!