diff --git a/benchmarks/package.json b/benchmarks/package.json index c0a9457f..f2aa98bd 100644 --- a/benchmarks/package.json +++ b/benchmarks/package.json @@ -15,8 +15,8 @@ "dependencies": { "list": "^2.0.19", "lodash": "^4.17.21", - "rambda": "^6.9.0", - "ramda": "^0.27.1", - "remeda": "^0.0.32" + "rambda": "^9.2.0", + "ramda": "^0.30.0", + "remeda": "^1.61.0" } } diff --git a/benchmarks/scripts/run.sh b/benchmarks/scripts/run.sh old mode 100644 new mode 100755 diff --git a/benchmarks/utils.js b/benchmarks/utils.js index 9396f17d..be1f0a18 100644 --- a/benchmarks/utils.js +++ b/benchmarks/utils.js @@ -1,3 +1,5 @@ +const {dependencies} =require('./package.json') +const package = require('../package.json') const _ = require('lodash/fp') const ramda = require('ramda') const rambda = require('rambda') @@ -40,10 +42,10 @@ const addBenchmarkSuite = (label, module) => mapFn => { } } -exports.addTsBelt = addBenchmarkSuite('@mobily/ts-belt', belt) -exports.addRamda = addBenchmarkSuite('ramda', ramda) -exports.addRambda = addBenchmarkSuite('rambda', rambda) -exports.addRemeda = addBenchmarkSuite('remeda', remeda) +exports.addTsBelt = addBenchmarkSuite(`@mobily/ts-belt ${package['version']}`, belt) +exports.addRamda = addBenchmarkSuite(`ramda ${dependencies['ramda']}`, ramda) +exports.addRambda = addBenchmarkSuite(`rambda ${dependencies['rambda']}`, rambda) +exports.addRemeda = addBenchmarkSuite(`remeda ${dependencies['remeda']}`, remeda) exports.addLodashFp = addBenchmarkSuite('lodash/fp', _) exports.addNative = addBenchmarkSuite('native', native) exports.addFunkiaList = addBenchmarkSuite('funkia/list', L) diff --git a/benchmarks/yarn.lock b/benchmarks/yarn.lock index 20e3dd12..227a72bb 100644 --- a/benchmarks/yarn.lock +++ b/benchmarks/yarn.lock @@ -2,10 +2,10 @@ # yarn lockfile v1 -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-styles@^3.2.1: version "3.2.1" @@ -17,7 +17,7 @@ ansi-styles@^3.2.1: benchmark@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/benchmark/-/benchmark-2.1.4.tgz#09f3de31c916425d498cc2ee565a0ebf3c2a5629" - integrity sha1-CfPeMckWQl1JjMLuVloOvzwqVik= + integrity sha512-l9MlfN4M1K/H2fbhfMy3B7vJd6AGKJVQn2h6Sg/Yx+KckoUA7ewS5Vv6TjSq18ooE1kS9hhAlQRH3AkXIh/aOQ== dependencies: lodash "^4.17.4" platform "^1.3.3" @@ -45,7 +45,7 @@ chalk@^2.3.0: clone@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== color-convert@^1.9.0: version "1.9.3" @@ -57,78 +57,73 @@ color-convert@^1.9.0: color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== defaults@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" - integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + version "1.0.4" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.4.tgz#b0b02062c1e2aa62ff5d9528f0f98baa90978d7a" + integrity sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A== dependencies: clone "^1.0.2" docopt@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/docopt/-/docopt-0.6.2.tgz#b28e9e2220da5ec49f7ea5bb24a47787405eeb11" - integrity sha1-so6eIiDaXsSffqW7JKR3h0Be6xE= + integrity sha512-NqTbaYeE4gA/wU1hdKFdU+AFahpDOpgGLzHP42k6H6DKExJd0A55KEVWYhL9FEmHmgeLvEU2vuKXDuU+4yToOw== easy-table@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/easy-table/-/easy-table-1.1.1.tgz#c1b9b9ad68a017091a1c235e4bcba277540e143f" - integrity sha512-C9Lvm0WFcn2RgxbMnTbXZenMIWcBtkzMr+dWqq/JsVoGFSVUVlPqeOa5LP5kM0I3zoOazFpckOEb2/0LDFfToQ== + version "1.2.0" + resolved "https://registry.yarnpkg.com/easy-table/-/easy-table-1.2.0.tgz#ba9225d7138fee307bfd4f0b5bc3c04bdc7c54eb" + integrity sha512-OFzVOv03YpvtcWGe5AayU5G2hgybsg3iqA6drU8UaoZyB9jLGMTrz9+asnLp/E+6qPh88yEI1gvyZFZ41dmgww== dependencies: - ansi-regex "^3.0.0" + ansi-regex "^5.0.1" optionalDependencies: - wcwidth ">=1.0.1" + wcwidth "^1.0.1" escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== list@^2.0.19: version "2.0.19" resolved "https://registry.yarnpkg.com/list/-/list-2.0.19.tgz#370a3d7d3e24cfd5ced2c89cda2baf28e31e2830" integrity sha512-nnVaRp4RaMAQkCpypTThsdxKqgPMiSwJq93eAm2/IbpUa8sd04XKBhkKu+bMk63HmdjK8b8Cuh4xARHWX2ye/Q== -lodash@^4.17.21: +lodash@^4.17.21, lodash@^4.17.4: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -lodash@^4.17.4: - version "4.17.14" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.14.tgz#9ce487ae66c96254fe20b599f21b6816028078ba" - integrity sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw== - platform@^1.3.3: - version "1.3.5" - resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.5.tgz#fb6958c696e07e2918d2eeda0f0bc9448d733444" - integrity sha512-TuvHS8AOIZNAlE77WUDiR4rySV/VMptyMfcfeoMgs4P8apaZM3JrnbzBiixKUv+XR6i+BXrQh8WAnjaSPFO65Q== + version "1.3.6" + resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.6.tgz#48b4ce983164b209c2d45a107adb31f473a6e7a7" + integrity sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg== -rambda@^6.9.0: - version "6.9.0" - resolved "https://registry.yarnpkg.com/rambda/-/rambda-6.9.0.tgz#17cd0b0c427295e00e8fe12de5bd63884502a9a4" - integrity sha512-yosVdGg1hNGkXPzqGiOYNEpXKjEOxzUCg2rB0l+NKdyCaSf4z+i5ojbN0IqDSezMMf71YEglI+ZUTgTffn5afw== +rambda@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/rambda/-/rambda-9.2.0.tgz#c67bb792bf627dadcc9188a1558cfdf0bc0712d5" + integrity sha512-RjM8TBNPR+iSvWLqbBpFveDfEf2RPRKHuwBHjQdXsYFDwn3MIvgmJiqVVC1CIQKnOwzeDQd44zqDFgSKQ7RT1Q== -ramda@^0.27.1: - version "0.27.1" - resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9" - integrity sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw== +ramda@^0.30.0: + version "0.30.0" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.30.0.tgz#3cc4f0ddddfa6334dad2f371bd72c33237d92cd0" + integrity sha512-13Y0iMhIQuAm/wNGBL/9HEqIfRGmNmjKnTPlKWfA9f7dnDkr8d45wQ+S7+ZLh/Pq9PdcGxkqKUEA7ySu1QSd9Q== -remeda@^0.0.32: - version "0.0.32" - resolved "https://registry.yarnpkg.com/remeda/-/remeda-0.0.32.tgz#668e5d3b8a5c9edb1a19f33d5df805dd1e7d299c" - integrity sha512-FEdl8ONpqY7AvvMHG5WYdomc0mGf2khHPUDu6QvNkOq4Wjkw5BvzWM4QyksAQ/US1sFIIRG8TVBn6iJx6HbRrA== +remeda@^1.61.0: + version "1.61.0" + resolved "https://registry.yarnpkg.com/remeda/-/remeda-1.61.0.tgz#dccd31ab75d0f02865f3ef89e4f0ce0076096464" + integrity sha512-caKfSz9rDeSKBQQnlJnVW3mbVdFgxgGWQKq1XlFokqjf+hQD5gxutLGTTY2A/x24UxVyJe9gH5fAkFI63ULw4A== require-all@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/require-all/-/require-all-2.2.0.tgz#b4420c233ac0282d0ff49b277fb880a8b5de0894" - integrity sha1-tEIMIzrAKC0P9Jsnf7iAqLXeCJQ= + integrity sha512-YWj/WNCxs+KxppuN3j11Ztqzl8MI/oWj4ERwEwgJ5gsHzWi8OAK7FepPu8MLv/Rn8Pov6aPdpRkaoO2Tb6m+zQ== supports-color@^5.3.0: version "5.5.0" @@ -137,9 +132,9 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -wcwidth@>=1.0.1: +wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" - integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + integrity sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg== dependencies: defaults "^1.0.3" diff --git a/docs/benchmarks/v4.0.0/macbook-pro-2023.md b/docs/benchmarks/v4.0.0/macbook-pro-2023.md new file mode 100644 index 00000000..6f6af409 --- /dev/null +++ b/docs/benchmarks/v4.0.0/macbook-pro-2023.md @@ -0,0 +1,1287 @@ +--- +id: macbook-pro-2023 +title: MacBook Pro (M2 Pro, 2023) +--- + +| Processor | Memory | Node | Author | +|-----------|--------|------|-------| +| Apple M2 Pro | 16GB | v20.10.0 | [@JUSTIVE](https://github.com/JUSTIVE) | + +### map-filter-reduce + +_map → filter → reduce_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 210,618.09 ops/sec ±1.89% (98 runs) fastest +██████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 26,214.14 ops/sec ±2.99% (91 runs) -87.55% +█████████ + + +✔ ramda 0.29.1 130,846.87 ops/sec ±0.84% (98 runs) -37.87% +████████████████████████████████████████████████ + + +✔ rambda 9.1.0 148,625.64 ops/sec ±0.58% (99 runs) -29.43% +███████████████████████████████████████████████████████ + + +✔ lodash/fp 70,678.58 ops/sec ±1.96% (96 runs) -66.44% +██████████████████████████ + + +✔ native 69,986.50 ops/sec ±1.43% (96 runs) -66.77% +█████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### deepFlat-uniq-groupBy + +_deepFlat → uniq → groupBy_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 2,507,788.47 ops/sec ±5.31% (88 runs) fastest +████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 449,659.73 ops/sec ±2.34% (95 runs) -82.07% +██████████████ + + +✔ ramda 0.29.1 306,730.21 ops/sec ±0.57% (96 runs) -87.77% +█████████ + + +✔ rambda 9.1.0 1,461,626.50 ops/sec ±1.37% (93 runs) -41.72% +██████████████████████████████████████████████ + + +✔ lodash/fp 606,301.63 ops/sec ±0.38% (99 runs) -75.82% +███████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### sort + +_sort (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 11,164,082.66 ops/sec ±1.42% (98 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,717,184.76 ops/sec ±1.04% (98 runs) -84.62% +████████████ + + +✔ ramda 0.29.1 3,463,809.90 ops/sec ±0.82% (97 runs) -68.97% +█████████████████████████ + + +✔ rambda 9.1.0 3,200,750.44 ops/sec ±3.93% (89 runs) -71.33% +███████████████████████ + + +✔ native 3,509,084.71 ops/sec ±1.57% (96 runs) -68.57% +█████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_sort (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 9,377,734.12 ops/sec ±1.59% (96 runs) fastest +████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,558,878.34 ops/sec ±0.85% (98 runs) -83.38% +█████████████ + + +✔ ramda 0.29.1 1,489,653.66 ops/sec ±3.55% (91 runs) -84.11% +████████████ + + +✔ rambda 9.1.0 2,777,255.14 ops/sec ±2.54% (90 runs) -70.38% +███████████████████████ + + +✔ native 3,331,397.31 ops/sec ±1.48% (89 runs) -64.48% +████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### unzip + +_unzip (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 36,801,233.95 ops/sec ±0.76% (96 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 7,418,630.14 ops/sec ±1.84% (93 runs) -79.84% +████████████████ + + +✔ rambda 9.1.0 6,984,110.38 ops/sec ±5.83% (76 runs) -81.02% +███████████████ + + +✔ lodash/fp 2,265,380.38 ops/sec ±3.94% (84 runs) -93.84% +████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_unzip (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 24,694,764.37 ops/sec ±3.38% (91 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 2,575,578.84 ops/sec ±1.87% (96 runs) -89.57% +████████ + + +✔ rambda 9.1.0 6,851,650.47 ops/sec ±1.35% (98 runs) -72.25% +██████████████████████ + + +✔ lodash/fp 2,105,245.16 ops/sec ±1.48% (98 runs) -91.47% +██████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### flat + +_flat (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 29,817,352.79 ops/sec ±2.48% (95 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,969,211.53 ops/sec ±2.07% (89 runs) -90.04% +████████ + + +✔ ramda 0.29.1 2,247,835.10 ops/sec ±0.87% (94 runs) -92.46% +██████ + + +✔ lodash/fp 17,912,472.29 ops/sec ±0.44% (92 runs) -39.93% +████████████████████████████████████████████████ + + +✔ native 1,410,088.99 ops/sec ±0.32% (96 runs) -95.27% +███ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_flat (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 28,119,903.19 ops/sec ±2.08% (92 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,258,466.70 ops/sec ±2.07% (95 runs) -91.97% +██████ + + +✔ ramda 0.29.1 1,397,547.05 ops/sec ±1.94% (97 runs) -95.03% +████ + + +✔ lodash/fp 7,269,578.49 ops/sec ±4.64% (91 runs) -74.15% +████████████████████ + + +✔ native 1,306,760.70 ops/sec ±3.74% (94 runs) -95.35% +███ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### dropWhile + +_dropWhile (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 41,397,658.93 ops/sec ±2.67% (92 runs) -23.14% +██████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 26,852,369.04 ops/sec ±4.09% (88 runs) -50.14% +████████████████████████████████████████ + + +✔ rambda 9.1.0 53,860,458.11 ops/sec ±3.11% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 12,209,184.54 ops/sec ±2.42% (93 runs) -77.33% +██████████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_dropWhile (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 27,109,580.46 ops/sec ±5.90% (79 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 2,460,719.30 ops/sec ±3.07% (92 runs) -90.92% +███████ + + +✔ rambda 9.1.0 16,136,910.13 ops/sec ±3.36% (89 runs) -40.48% +████████████████████████████████████████████████ + + +✔ lodash/fp 1,062,921.06 ops/sec ±2.04% (88 runs) -96.08% +███ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### takeWhile + +_takeWhile (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 55,106,537.00 ops/sec ±3.96% (88 runs) -31.85% +███████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,873,809.24 ops/sec ±3.10% (88 runs) -96.45% +██ + + +✔ ramda 0.29.1 31,677,471.92 ops/sec ±1.93% (96 runs) -60.82% +███████████████████████████████ + + +✔ rambda 9.1.0 80,860,511.55 ops/sec ±2.11% (89 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 14,058,588.89 ops/sec ±2.51% (96 runs) -82.61% +██████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_takeWhile (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 34,504,366.15 ops/sec ±3.82% (82 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,522,077.24 ops/sec ±3.07% (86 runs) -92.69% +█████ + + +✔ ramda 0.29.1 2,501,120.49 ops/sec ±2.53% (93 runs) -92.75% +█████ + + +✔ rambda 9.1.0 17,682,897.59 ops/sec ±4.31% (86 runs) -48.75% +█████████████████████████████████████████ + + +✔ lodash/fp 1,000,494.89 ops/sec ±2.20% (92 runs) -97.10% +██ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### difference + +_difference (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 12,649,268.86 ops/sec ±5.64% (86 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,379,594.59 ops/sec ±2.88% (90 runs) -81.19% +███████████████ + + +✔ ramda 0.29.1 5,633,476.60 ops/sec ±6.24% (82 runs) -55.46% +████████████████████████████████████ + + +✔ rambda 9.1.0 3,615,643.29 ops/sec ±1.43% (88 runs) -71.42% +███████████████████████ + + +✔ lodash/fp 5,895,787.27 ops/sec ±2.98% (96 runs) -53.39% +█████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_difference (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 11,474,681.56 ops/sec ±4.76% (91 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,849,003.35 ops/sec ±3.03% (91 runs) -83.89% +█████████████ + + +✔ ramda 0.29.1 1,912,097.98 ops/sec ±1.81% (92 runs) -83.34% +█████████████ + + +✔ rambda 9.1.0 2,672,527.20 ops/sec ±4.90% (83 runs) -76.71% +██████████████████ + + +✔ lodash/fp 1,077,226.65 ops/sec ±0.85% (95 runs) -90.61% +███████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### deepFlat + +_deepFlat (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 19,302,541.06 ops/sec ±2.68% (92 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,259,838.42 ops/sec ±5.16% (85 runs) -93.47% +█████ + + +✔ ramda 0.29.1 774,581.34 ops/sec ±4.05% (87 runs) -95.99% +███ + + +✔ rambda 9.1.0 16,409,311.01 ops/sec ±2.16% (88 runs) -14.99% +████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 7,455,398.56 ops/sec ±0.76% (92 runs) -61.38% +███████████████████████████████ + + +✔ native 1,129,732.24 ops/sec ±1.12% (99 runs) -94.15% +████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_deepFlat (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 19,681,846.28 ops/sec ±1.25% (98 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,127,154.68 ops/sec ±1.23% (94 runs) -94.27% +████ + + +✔ ramda 0.29.1 714,162.44 ops/sec ±0.99% (93 runs) -96.37% +██ + + +✔ rambda 9.1.0 10,963,433.25 ops/sec ±1.51% (91 runs) -44.30% +█████████████████████████████████████████████ + + +✔ lodash/fp 4,964,707.90 ops/sec ±0.83% (96 runs) -74.78% +████████████████████ + + +✔ native 1,128,509.12 ops/sec ±0.51% (95 runs) -94.27% +████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### reduce + +_reduce (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 38,652,309.20 ops/sec ±4.20% (92 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,467,364.20 ops/sec ±3.04% (87 runs) -93.62% +█████ + + +✔ ramda 0.29.1 11,416,346.08 ops/sec ±1.16% (91 runs) -70.46% +███████████████████████ + + +✔ rambda 9.1.0 13,423,705.56 ops/sec ±2.55% (90 runs) -65.27% +████████████████████████████ + + +✔ lodash/fp 10,986,181.07 ops/sec ±1.21% (96 runs) -71.58% +███████████████████████ + + +✔ native 17,477,591.88 ops/sec ±1.16% (92 runs) -54.78% +████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_reduce (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 24,009,440.93 ops/sec ±2.10% (91 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,255,899.13 ops/sec ±0.39% (92 runs) -90.60% +███████ + + +✔ ramda 0.29.1 2,372,419.34 ops/sec ±0.49% (95 runs) -90.12% +████████ + + +✔ rambda 9.1.0 6,975,840.06 ops/sec ±1.74% (92 runs) -70.95% +███████████████████████ + + +✔ lodash/fp 1,104,695.84 ops/sec ±0.61% (95 runs) -95.40% +███ + + +✔ native 14,113,408.99 ops/sec ±3.39% (94 runs) -41.22% +███████████████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### reject + +_reject (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 37,663,627.08 ops/sec ±1.98% (92 runs) -15.23% +████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,638,541.77 ops/sec ±2.01% (95 runs) -94.06% +████ + + +✔ ramda 0.29.1 27,426,708.62 ops/sec ±1.97% (88 runs) -38.27% +██████████████████████████████████████████████████ + + +✔ rambda 9.1.0 44,429,840.05 ops/sec ±1.69% (97 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 7,949,763.54 ops/sec ±0.78% (98 runs) -82.11% +██████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_reject (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 26,974,683.24 ops/sec ±1.91% (95 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,882,014.33 ops/sec ±1.29% (97 runs) -93.02% +█████ + + +✔ ramda 0.29.1 2,695,636.99 ops/sec ±1.80% (92 runs) -90.01% +████████ + + +✔ rambda 9.1.0 16,289,075.86 ops/sec ±1.03% (96 runs) -39.61% +████████████████████████████████████████████████ + + +✔ lodash/fp 815,733.05 ops/sec ±7.83% (81 runs) -96.98% +██ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### intersection + +_intersection (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 13,690,380.83 ops/sec ±3.39% (87 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,563,526.74 ops/sec ±1.40% (97 runs) -81.27% +███████████████ + + +✔ ramda 0.29.1 3,104,541.73 ops/sec ±1.62% (93 runs) -77.32% +██████████████████ + + +✔ rambda 9.1.0 7,664,922.45 ops/sec ±2.76% (91 runs) -44.01% +█████████████████████████████████████████████ + + +✔ lodash/fp 4,399,038.73 ops/sec ±3.34% (94 runs) -67.87% +██████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_intersection (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 11,829,806.34 ops/sec ±1.79% (87 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,006,041.07 ops/sec ±0.70% (97 runs) -83.04% +█████████████ + + +✔ ramda 0.29.1 1,451,850.94 ops/sec ±0.94% (97 runs) -87.73% +█████████ + + +✔ rambda 9.1.0 5,832,412.95 ops/sec ±2.32% (96 runs) -50.70% +███████████████████████████████████████ + + +✔ lodash/fp 899,790.04 ops/sec ±8.06% (79 runs) -92.39% +██████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### intersperse + +_intersperse (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 37,014,180.37 ops/sec ±2.97% (92 runs) -10.81% +████████████████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 38,192,221.30 ops/sec ±4.89% (84 runs) -7.97% +██████████████████████████████████████████████████████████████████████████ + + +✔ rambda 9.1.0 41,498,909.18 ops/sec ±2.06% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ +``` + +→ Fastest is **rambda 9.1.0,ramda 0.29.1** + +_intersperse (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 27,036,826.11 ops/sec ±1.27% (96 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 2,880,722.30 ops/sec ±1.12% (95 runs) -89.35% +████████ + + +✔ rambda 9.1.0 15,559,119.16 ops/sec ±1.62% (95 runs) -42.45% +██████████████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### flatMap + +_flatMap (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 28,122,029.43 ops/sec ±2.09% (89 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,603,829.04 ops/sec ±3.34% (94 runs) -94.30% +████ + + +✔ ramda 0.29.1 1,749,820.41 ops/sec ±1.59% (84 runs) -93.78% +█████ + + +✔ rambda 9.1.0 5,374,563.11 ops/sec ±1.23% (96 runs) -80.89% +███████████████ + + +✔ lodash/fp 5,895,882.69 ops/sec ±1.08% (98 runs) -79.03% +████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_flatMap (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 21,641,254.54 ops/sec ±4.09% (85 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,902,039.25 ops/sec ±1.99% (94 runs) -91.21% +███████ + + +✔ ramda 0.29.1 1,104,755.06 ops/sec ±2.75% (96 runs) -94.90% +████ + + +✔ rambda 9.1.0 4,308,685.08 ops/sec ±0.77% (99 runs) -80.09% +████████████████ + + +✔ lodash/fp 1,009,023.87 ops/sec ±0.63% (94 runs) -95.34% +███ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### fromPairs + +_fromPairs (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 19,349,660.21 ops/sec ±3.62% (96 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 3,214,687.94 ops/sec ±1.25% (97 runs) -83.39% +█████████████ + + +✔ ramda 0.29.1 9,800,536.28 ops/sec ±1.40% (96 runs) -49.35% +█████████████████████████████████████████ + + +✔ rambda 9.1.0 16,872,766.82 ops/sec ±0.71% (95 runs) -12.80% +██████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 15,174,995.44 ops/sec ±0.63% (93 runs) -21.57% +███████████████████████████████████████████████████████████████ + + +✔ native 3,265,912.55 ops/sec ±2.15% (93 runs) -83.12% +█████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_fromPairs (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 16,826,256.68 ops/sec ±4.68% (83 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,743,449.71 ops/sec ±3.98% (89 runs) -83.70% +█████████████ + + +✔ ramda 0.29.1 2,687,259.39 ops/sec ±3.77% (85 runs) -84.03% +████████████ + + +✔ rambda 9.1.0 10,207,347.08 ops/sec ±3.35% (86 runs) -39.34% +█████████████████████████████████████████████████ + + +✔ lodash/fp 3,017,891.06 ops/sec ±2.11% (90 runs) -82.06% +██████████████ + + +✔ native 2,929,457.32 ops/sec ±3.53% (86 runs) -82.59% +██████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### union + +_union (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 12,903,303.46 ops/sec ±4.26% (87 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 1,249,701.35 ops/sec ±4.63% (87 runs) -90.31% +███████ + + +✔ rambda 9.1.0 7,041,611.77 ops/sec ±0.58% (92 runs) -45.43% +████████████████████████████████████████████ + + +✔ lodash/fp 4,773,254.50 ops/sec ±3.86% (90 runs) -63.01% +█████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_union (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 10,959,590.81 ops/sec ±3.17% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ ramda 0.29.1 838,719.04 ops/sec ±2.03% (92 runs) -92.35% +██████ + + +✔ rambda 9.1.0 5,544,785.25 ops/sec ±1.31% (93 runs) -49.41% +████████████████████████████████████████ + + +✔ lodash/fp 887,911.64 ops/sec ±4.07% (87 runs) -91.90% +██████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### groupBy + +_groupBy (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 6,588,664.50 ops/sec ±12.58% (90 runs) -8.35% +██████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,872,505.05 ops/sec ±1.73% (91 runs) -73.95% +█████████████████████ + + +✔ ramda 0.29.1 1,306,696.31 ops/sec ±2.52% (85 runs) -81.82% +██████████████ + + +✔ rambda 9.1.0 7,189,115.89 ops/sec ±1.75% (88 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 3,572,208.01 ops/sec ±2.79% (91 runs) -50.31% +████████████████████████████████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_groupBy (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 6,566,127.59 ops/sec ±1.16% (90 runs) fastest +████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,693,162.61 ops/sec ±0.87% (94 runs) -74.21% +████████████████████ + + +✔ ramda 0.29.1 889,268.64 ops/sec ±2.74% (94 runs) -86.46% +██████████ + + +✔ rambda 9.1.0 5,375,696.89 ops/sec ±2.38% (92 runs) -18.13% +█████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 904,002.11 ops/sec ±2.39% (94 runs) -86.23% +███████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### zip + +_zip (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 25,352,683.70 ops/sec ±0.81% (98 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,907,647.53 ops/sec ±2.43% (95 runs) -88.53% +█████████ + + +✔ ramda 0.29.1 21,794,470.51 ops/sec ±5.28% (87 runs) -14.03% +█████████████████████████████████████████████████████████████████████ + + +✔ rambda 9.1.0 20,562,438.44 ops/sec ±5.72% (83 runs) -18.89% +█████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 4,279,863.79 ops/sec ±4.65% (89 runs) -83.12% +█████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_zip (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 19,864,271.14 ops/sec ±2.66% (93 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,411,208.32 ops/sec ±2.28% (92 runs) -87.86% +█████████ + + +✔ ramda 0.29.1 2,692,766.47 ops/sec ±1.02% (94 runs) -86.44% +██████████ + + +✔ rambda 9.1.0 11,304,029.17 ops/sec ±4.60% (88 runs) -43.09% +██████████████████████████████████████████████ + + +✔ lodash/fp 957,208.04 ops/sec ±3.21% (90 runs) -95.18% +███ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### forEach + +_forEach (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 96,467,739.51 ops/sec ±1.06% (95 runs) -33.44% +██████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,959,023.19 ops/sec ±1.34% (93 runs) -97.96% +█ + + +✔ ramda 0.29.1 134,283,432.69 ops/sec ±0.27% (98 runs) -7.35% +███████████████████████████████████████████████████████████████████████████ + + +✔ rambda 9.1.0 144,940,816.12 ops/sec ±1.45% (92 runs) fastest +██████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 9,649,186.82 ops/sec ±0.93% (91 runs) -93.34% +█████ + + +✔ native 23,840,424.35 ops/sec ±3.68% (94 runs) -83.55% +█████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_forEach (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 52,201,380.32 ops/sec ±2.20% (88 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,889,904.65 ops/sec ±1.59% (95 runs) -96.38% +██ + + +✔ ramda 0.29.1 3,005,305.76 ops/sec ±0.96% (93 runs) -94.24% +████ + + +✔ rambda 9.1.0 21,645,702.02 ops/sec ±3.22% (94 runs) -58.53% +█████████████████████████████████ + + +✔ lodash/fp 1,018,565.67 ops/sec ±3.61% (92 runs) -98.05% +█ + + +✔ native 18,045,933.10 ops/sec ±0.96% (97 runs) -65.43% +████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### uniq + +_uniq (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 16,032,302.84 ops/sec ±1.04% (95 runs) -14.60% +█████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,240,600.53 ops/sec ±1.22% (93 runs) -88.06% +█████████ + + +✔ ramda 0.29.1 1,185,321.09 ops/sec ±1.18% (89 runs) -93.69% +█████ + + +✔ rambda 9.1.0 2,411,232.07 ops/sec ±0.84% (97 runs) -87.16% +██████████ + + +✔ lodash/fp 18,773,108.86 ops/sec ±1.49% (93 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ +``` + +→ Fastest is **lodash/fp** + +_uniq (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 14,252,051.67 ops/sec ±2.82% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,807,986.26 ops/sec ±1.52% (92 runs) -87.31% +██████████ + + +✔ ramda 0.29.1 872,706.50 ops/sec ±1.75% (92 runs) -93.88% +████ + + +✔ rambda 9.1.0 2,169,098.32 ops/sec ±1.81% (92 runs) -84.78% +████████████ + + +✔ lodash/fp 8,225,989.54 ops/sec ±2.12% (95 runs) -42.28% +██████████████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### toPairs + +_toPairs (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 45,165,354.13 ops/sec ±0.63% (94 runs) -13.82% +█████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 3,505,000.47 ops/sec ±2.04% (92 runs) -93.31% +█████ + + +✔ ramda 0.29.1 12,336,307.39 ops/sec ±1.94% (82 runs) -76.46% +███████████████████ + + +✔ rambda 9.1.0 52,410,573.44 ops/sec ±1.42% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 13,390,269.55 ops/sec ±2.77% (91 runs) -74.45% +████████████████████ + + +✔ native 46,935,255.95 ops/sec ±4.40% (85 runs) -10.45% +████████████████████████████████████████████████████████████████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_toPairs (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 38,699,727.10 ops/sec ±0.75% (91 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 3,503,409.97 ops/sec ±1.25% (91 runs) -90.95% +███████ + + +✔ ramda 0.29.1 3,074,515.09 ops/sec ±1.79% (98 runs) -92.06% +██████ + + +✔ rambda 9.1.0 19,937,436.97 ops/sec ±1.71% (95 runs) -48.48% +█████████████████████████████████████████ + + +✔ lodash/fp 6,087,940.25 ops/sec ±1.63% (95 runs) -84.27% +████████████ + + +✔ native 35,629,666.15 ops/sec ±3.25% (90 runs) -7.93% +██████████████████████████████████████████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### map + +_map (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 52,665,934.06 ops/sec ±3.04% (91 runs) -17.38% +██████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,823,973.92 ops/sec ±2.90% (87 runs) -95.57% +███ + + +✔ ramda 0.29.1 43,270,103.57 ops/sec ±1.10% (91 runs) -32.12% +██████████████████████████████████████████████████████ + + +✔ rambda 9.1.0 63,741,386.37 ops/sec ±2.88% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 11,270,821.04 ops/sec ±1.20% (95 runs) -82.32% +██████████████ + + +✔ native 19,121,836.61 ops/sec ±0.34% (98 runs) -70.00% +████████████████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_map (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 33,764,814.68 ops/sec ±0.26% (98 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,855,216.24 ops/sec ±2.60% (97 runs) -94.51% +████ + + +✔ ramda 0.29.1 2,710,727.85 ops/sec ±2.13% (94 runs) -91.97% +██████ + + +✔ rambda 9.1.0 17,469,343.05 ops/sec ±1.38% (96 runs) -48.26% +█████████████████████████████████████████ + + +✔ lodash/fp 1,041,585.56 ops/sec ±0.49% (95 runs) -96.92% +██ + + +✔ native 15,458,753.77 ops/sec ±0.36% (93 runs) -54.22% +█████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### filter + +_filter (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 44,351,525.40 ops/sec ±0.33% (98 runs) -7.67% +██████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,643,831.23 ops/sec ±1.37% (91 runs) -94.50% +████ + + +✔ ramda 0.29.1 33,984,807.48 ops/sec ±2.93% (89 runs) -29.26% +█████████████████████████████████████████████████████████ + + +✔ rambda 9.1.0 48,038,460.57 ops/sec ±2.51% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 8,383,912.47 ops/sec ±0.89% (97 runs) -82.55% +██████████████ + + +✔ native 17,405,612.14 ops/sec ±1.33% (96 runs) -63.77% +█████████████████████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_filter (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 32,055,958.41 ops/sec ±2.82% (96 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 1,764,755.44 ops/sec ±3.37% (86 runs) -94.49% +████ + + +✔ ramda 0.29.1 2,800,792.49 ops/sec ±3.05% (96 runs) -91.26% +███████ + + +✔ rambda 9.1.0 17,689,868.35 ops/sec ±0.39% (95 runs) -44.82% +████████████████████████████████████████████ + + +✔ lodash/fp 1,052,170.64 ops/sec ±0.22% (98 runs) -96.72% +██ + + +✔ native 14,397,540.41 ops/sec ±0.98% (98 runs) -55.09% +████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### find + +_find (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 84,743,210.55 ops/sec ±0.25% (97 runs) -43.72% +██████████████████████████████████████████████ + + +✔ remeda 1.47.1 3,297,131.51 ops/sec ±1.43% (98 runs) -97.81% +█ + + +✔ ramda 0.29.1 144,977,269.07 ops/sec ±1.71% (93 runs) -3.72% +██████████████████████████████████████████████████████████████████████████████ + + +✔ rambda 9.1.0 150,577,722.56 ops/sec ±1.62% (90 runs) fastest +██████████████████████████████████████████████████████████████████████████████████ + + +✔ lodash/fp 9,868,611.40 ops/sec ±1.15% (96 runs) -93.45% +█████ + + +✔ native 30,596,265.62 ops/sec ±2.97% (91 runs) -79.68% +████████████████ +``` + +→ Fastest is **rambda 9.1.0** + +_find (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 46,030,905.61 ops/sec ±4.37% (90 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,114,486.35 ops/sec ±0.95% (94 runs) -95.41% +███ + + +✔ ramda 0.29.1 3,052,162.37 ops/sec ±1.12% (95 runs) -93.37% +█████ + + +✔ rambda 9.1.0 22,702,249.62 ops/sec ±0.49% (96 runs) -50.68% +███████████████████████████████████████ + + +✔ lodash/fp 1,063,552.35 ops/sec ±0.42% (90 runs) -97.69% +█ + + +✔ native 22,979,189.59 ops/sec ±0.54% (99 runs) -50.08% +████████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +### splitEvery + +_splitEvery/chunk (single function call)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 25,456,744.60 ops/sec ±4.00% (89 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,811,572.96 ops/sec ±0.68% (94 runs) -88.96% +████████ + + +✔ ramda 0.29.1 10,956,690.24 ops/sec ±1.71% (91 runs) -56.96% +██████████████████████████████████ + + +✔ rambda 9.1.0 15,500,031.40 ops/sec ±4.70% (89 runs) -39.11% +█████████████████████████████████████████████████ + + +✔ lodash/fp 12,438,738.39 ops/sec ±2.32% (94 runs) -51.14% +███████████████████████████████████████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** + +_splitEvery/chunk (function call inside `pipe`)_ + +```bash +✔ @mobily/ts-belt 4.0.0-rc.5 19,802,212.47 ops/sec ±3.03% (92 runs) fastest +█████████████████████████████████████████████████████████████████████████████████ + + +✔ remeda 1.47.1 2,780,492.66 ops/sec ±2.16% (90 runs) -85.96% +███████████ + + +✔ ramda 0.29.1 2,164,848.82 ops/sec ±1.10% (98 runs) -89.07% +████████ + + +✔ rambda 9.1.0 10,438,306.63 ops/sec ±1.45% (99 runs) -47.29% +██████████████████████████████████████████ + + +✔ lodash/fp 1,136,961.98 ops/sec ±0.67% (94 runs) -94.26% +████ +``` + +→ Fastest is **@mobily/ts-belt 4.0.0-rc.5** +