{"ScriptPreparationCode":"var data = _.range(10000).map(function(i) {\r\n return {\r\n counter: i\r\n }\r\n});\r\n\r\nfunction isOdd(num) {\r\n return num % 2 === 1;\r\n}\r\n\r\nfunction square(num) {\r\n return num * num;\r\n}\r\n\r\nfunction lessThanThreeDigits(num) {\r\n return num.toString().length \u003C 3;\r\n}","TestCases":[{"Name":"Lodash","Code":"var result = _.chain(data)\r\n\t.map(\u0027counter\u0027)\r\n\t.filter(isOdd)\r\n\t.map(square)\r\n\t.filter(lessThanThreeDigits)\r\n\t.value();","IsDeferred":false},{"Name":"Ramda without currying","Code":"var result = Ramda.filter(lessThanThreeDigits,\r\n\tRamda.map(square,\r\n\t\tRamda.filter(isOdd,\r\n\t\t\tRamda.pluck(\u0027counter\u0027, data))));","IsDeferred":false},{"Name":"Ramda with currying","Code":"var result = Ramda.pipe(\r\n Ramda.pluck(\u0027counter\u0027),\r\n Ramda.filter(isOdd),\r\n Ramda.map(square),\r\n Ramda.filter(lessThanThreeDigits)\r\n)(data);","IsDeferred":false},{"Name":"Rambda without currying","Code":"var result = Rambda.filter(lessThanThreeDigits,\r\n Rambda.map(square,\r\n Rambda.filter(isOdd,\r\n Rambda.pluck(\u0027counter\u0027, data))));","IsDeferred":false},{"Name":"Rambda with currying","Code":"var result = Rambda.pipe(\r\n Rambda.pluck(\u0027counter\u0027),\r\n Rambda.filter(isOdd),\r\n Rambda.map(square),\r\n Rambda.filter(lessThanThreeDigits)\r\n)(data);","IsDeferred":false}]}