O'Reilly logo
  • Nate Wittnam thinks this is interesting:

Typically, you will see this point accompanied by other definitional qualifications including but not limited to static typing, pattern matching, immutability, purity, and so on. However, while these other points describe certain implementations of functional programming languages, they fail in broad applicability. If I boil down the definition to its essence, consisting of the terms “facilitating” and “first-class functions,” then it covers a broad range of languages from Haskell to JavaScript—the latter being quite important to this book. Thankfully, this also allows first-class functions to be defined in a paragraph.[


Cover of Functional JavaScript


functional attributes