Appendix A. Functional JavaScript in the Wild
In no way does this book represent even a modicum of original thinking regarding functional programming in JavaScript. For many years—indeed, for as long as JavaScript has existed—people have pushed the boundaries of its support for a functional style. In this appendix, I’ll attempt to briefly summarize what I perceive as a fair sampling of the offerings in languages and libraries on the topic of functional JavaScript. No ranking is implied.
Functional Libraries for JavaScript
There are numerous noteworthy JavaScript libraries available in the wild. I’ll run through the high-level features of a few herein and provide a few examples along the way.
Functional JavaScript
Oliver Steele’s Functional
JavaScript library is the first functional library that I
discovered. It provides all of the normal higher-order functions like
map, but it provides a very
interesting string-based short-form function format. That is, to square
the numbers in an array, one would normally write the
following:
map(function(n){returnn*n},[1,2,3,4]);//=> [2, 4, 9, 16]
However, with the Functional JavaScript function literal string, the same code be written as:
map('n*n',[1,2,3,4]);//=> [2, 4, 9, 16]
Functional JavaScript also provides currying of the function literal strings:
varlessThan5=rcurry('<',5);lessThan5(4);//=> truelessThan5(44);//=> false
Functional JavaScript is a masterful piece of JavaScript metaprogramming and well worth exploring for its ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access