Functional Programming

📄 Wiki page | 🕑 Last updated: Feb 12, 2022

In the simplest sense, functional programming is a paradigm in which functions are the main building block (instead of objects or procedures).

There are a lot of debates out there about what really makes a language a functional language, but you don't really need much to get the most important benefits of FP.

This will be an index page for the FP-related topics. Each page/chapter is standalone, but they are also interconnected into the bigger guide.

Note: I'm going to mostly use JS as an example language, simply because is the language most people today know (and it has support for first-class functions).


  1. Pure functions
  2. Referential transparency
  3. Functional core, imperative shell

Ask me anything / Suggestions

If you have any suggestions or questions (related to this or any other topic), feel free to contact me. ℹī¸

If you find this site useful in any way, please consider supporting it.