Functional Typeclasses 1: Overview and `Semigroup`

This is the first of a series of articles that deep dives a few very powerful type classes that every functional programmer should know. For example,Monoid, Functor, Applicative, etc. These are indeed so functional that they are prevalent in Haskell production code. We explain them with examples in Haskell. This…

You Can Unfold So Much More with Monoid: Examples

This is the eighth of a series of articles that illustrates functional programming (FP) concepts. As you go through these articles with code examples in Haskell (a very popular FP language), you gain the grounding for picking up any FP language quickly. Why should you care about FP? See this…

More on Anamorphism: Unfolding More Than List in Haskell

This is the seventh of a series of articles that illustrates functional programming (FP) concepts. As you go through these articles with code examples in Haskell (a very popular FP language), you gain the grounding for picking up any FP language quickly. Why should you care about FP? See this…

More on types, typeclasses and the foldable typeclass

This is the third of a series of articles that illustrates functional programming (FP) concepts. As you go through these articles with code examples in Haskell (a very popular FP language), you gain the grounding for picking up any FP language quickly. Why should you care about FP? See this…

Higher Order Functions: Lambda calculus, Currying, Maps

This is the second of a series of articles that illustrates functional programming (FP) concepts to imperative programmers. As you go through these articles with code examples in Haskell (one of the most popular FP languages), you gain the grounding for picking up any FP languages quickly. Why should you…

Recursion: An Indispensable Tool For Every Functional Programmer [Example With Insertion Sort]

This is the first of a series of articles that illustrates functional programming (FP) concepts to imperative programmers. As you go through these articles with code examples in Haskell (one of the most popular FP languages), you gain the grounding for picking up any FP languages quickly. Why should you…