Ramda.js
Ramda is a library designed specifically for a functional programming style. It makes it easy to create functional programming pipelines, and never mutates user data.
JavaScript’s Array.prototype
class has some functionally-flavored methods such as map, reduce, and filter. However, these only operate on arrays.
Ramda is described as more generic, being that it can work with strings, objects, and user-defined data types.
There are other convenience libraries that allow functional operations on objects, such as lodash,
but Ramda is much more functional by design; explicitly eliminating the possibility side-effects, and facilitating a divergence from the very imperative style of JavaScript to a more declarative model of programming.
Composition with Functions
So why would I want to use Ramda when lodash is easier to understand? Ramda allows functions to be used as first-order components.
[Read More]