When comparing Underscore.js vs Bacon.js, the Slant community recommends Bacon.js for most people. In the question“What are the best libraries for functional programming on Node.js?” Bacon.js is ranked 6th while Underscore.js is ranked 16th.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Wide variety of useful utility functions
Underscore comes with not just all the usual functional suspects, but all the tools you'll need to go back-and-forth between Object Oriented and Functional paradigms - dynamically create objects from lists and vice-versa, pull data from object fields, bind 'this', partially apply, chain functions, and more.
Pro Widely used
Underscore's popularity means that it's battle-hardened and ready for production use.
Cons
Con Does not support "General" functional programming
Is for a paradigm known as "Functional Reactive Programming"
For example, if you had a list and you want to sum it, you would use something called fold or reduce.
Except that in Bacon, you need to generate a new Observable, use result = Observable.fold on it, then watch the result, then insert the list. After which, you would have to ignore all values except the last one.