
functional-programming-jargon
A JavaScript-based glossary explaining functional programming terms in plain language.
- Stars
- 18.7k
- Forks
- 1k
- Licence
- MIT
- Language
- JavaScript
- Last update
- 1 months ago
- Type
- Curated list
What it is
This is a glossary of terms used in functional programming, such as closure, currying, monad, and functor. Each entry gives a short definition and a small JavaScript (ES2015) example. It is meant to make learning functional programming easier by explaining its vocabulary. The README also links an interactive graph version and translations into many other languages.
- Look up a term such as closure or currying while reading code
- Work through the examples to see how each concept looks in JavaScript
- Follow the further-reading links for deeper explanations of a term
- Use the translations list to find the glossary in another language
Great for
- Developers who know JavaScript and keep running into FP jargon
- Students starting to learn functional programming concepts
- Developers reading FP libraries or articles who need a quick term definition
- People who want to read FP terms in their own language via the listed translations
Not ideal for
- Readers looking for a full tutorial or course, since this is a reference of short definitions
- Readers who do not know JavaScript, because the examples are written in JavaScript
- People looking for software to install, since this is documentation rather than a tool
How to get it
- 1
Read it online
Clone the repository
git clone https://github.com/hemanth/functional-programming-jargon - 2
Run it
- Open the interactive version at http://hemanth.github.io/functional-programming-jargon/
- Or read the README on GitHub and browse the table of contents
- Pick a term, read its definition, and run the example code in a JavaScript console
- Follow the further-reading links for terms you want to explore more
- 3
Get the most out of it
- Use the table of contents to jump straight to a term you need
- Read the Why JavaScript wiki page to understand the choice of language for examples
- Check the translations list if you prefer reading in Portuguese, Spanish, Chinese, French and other languages
- Pair the glossary with the Fantasy Land spec, which the README says some terms follow
Downloads
Strengths
- Short, plain-language definitions with runnable-style code examples
- Covers a wide range of terms, from basics like arity to advanced ones like free monads and lenses
- Links to translations and an interactive graph version
Trade-offs
- Some entries are brief, so complex topics like monads get only a short definition and point to outside reading
- The README as shown is truncated, so the full list of terms and their completeness cannot be confirmed from it
- Examples target ES2015 JavaScript, which may look dated to some readers
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| functional-programming-jargon (this) | 18.7k | Curated list | beginner | 1 months ago | Developers who know JavaScript and keep running into FP jargon |
| Python | 226k | Learning resource | beginner | 17 days ago | Students learning algorithms and data structures |
| Web-Dev-For-Beginners | 97.1k | Learning resource | beginner | 5 days ago | Complete beginners who want a structured, self-paced path into web development |
| ML-For-Beginners | 91.9k | Learning resource | beginner | 5 days ago | Beginners who want a structured, self-paced introduction to machine learning |
| raspberry-pi-os | 14k | Learning resource | advanced | 2.6 years ago | Students who want to understand how operating systems work at the lowest level |
| 30-seconds-of-interviews | 12.1k | Learning resource | beginner | 3.9 years ago | Developers preparing for JavaScript or front-end interviews |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.