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…

Dependent types: formal definition and examples

Dependent types have been gaining a lot of attention among programmers. Some would say it’s “the next thing” in programming. Why is it gaining popularity? In this post, I hope to show some of the advantages of dependent types and get you started on programming in dependent types. To understand…