Giter Club home page Giter Club logo

Comments (4)

JUSTIVE avatar JUSTIVE commented on June 25, 2024

Hi. I updated all the contender's versions and tested them on my machine(Macbook Pro M2) and these are the results.

    "lodash": "4.17.21",
    "rambda": "9.1.0",
    "ramda": "0.29.1",
    "remeda": "1.47.1"

node version: 20.10

seems that the bold claims that ts-belt said are still valid I guess?

• ./complex/map-filter-reduce.js:

  • map → filter → reduce ......

    ✔  @mobily/ts-belt  200,706.06  ops/sec  ±1.78%  (95 runs)  fastest
    ✔  remeda            23,511.03  ops/sec  ±5.01%  (85 runs)  -88.29%
    ✔  ramda            121,550.03  ops/sec  ±3.36%  (93 runs)  -39.44%
    ✔  rambda           140,124.56  ops/sec  ±1.69%  (91 runs)  -30.18%
    ✔  lodash/fp         67,954.03  ops/sec  ±1.98%  (94 runs)  -66.14%
    ✔  native            70,668.41  ops/sec  ±0.61%  (97 runs)  -64.79%

    ➔ Fastest is @mobily/ts-belt

• ./complex/deepFlat-uniq-groupBy.js:

  • deepFlat → uniq → groupBy .....

    ✔  @mobily/ts-belt  2,457,612.39  ops/sec  ±4.52%  (90 runs)  fastest
    ✔  remeda             426,752.43  ops/sec  ±3.43%  (95 runs)  -82.64%
    ✔  ramda              286,672.74  ops/sec  ±2.58%  (89 runs)  -88.34%
    ✔  rambda           1,324,157.91  ops/sec  ±2.87%  (93 runs)  -46.12%
    ✔  lodash/fp          535,414.50  ops/sec  ±4.50%  (86 runs)  -78.21%

    ➔ Fastest is @mobily/ts-belt

• ./simple/sort.js:

  • sort (single function call).....

    ✔  @mobily/ts-belt  10,466,953.73  ops/sec  ±4.07%  (89 runs)  fastest
    ✔  remeda            1,671,376.00  ops/sec  ±1.58%  (95 runs)  -84.03%
    ✔  ramda             3,366,208.27  ops/sec  ±0.85%  (98 runs)  -67.84%
    ✔  rambda            3,412,809.85  ops/sec  ±0.61%  (97 runs)  -67.39%
    ✔  native            3,412,869.41  ops/sec  ±1.57%  (93 runs)  -67.39%

    ➔ Fastest is @mobily/ts-belt

  • sort (function call inside `pipe`).....

    ✔  @mobily/ts-belt  8,809,714.25  ops/sec  ±1.13%  (97 runs)  fastest
    ✔  remeda           1,473,082.22  ops/sec  ±2.27%  (94 runs)  -83.28%
    ✔  ramda            1,507,070.74  ops/sec  ±2.69%  (89 runs)  -82.89%
    ✔  rambda           2,907,792.40  ops/sec  ±1.39%  (92 runs)  -66.99%
    ✔  native           3,124,722.40  ops/sec  ±2.97%  (91 runs)  -64.53%

    ➔ Fastest is @mobily/ts-belt

• ./simple/unzip.js:

  • unzip (single function call)....

    ✔  @mobily/ts-belt  26,888,255.75  ops/sec  ±8.74%  (80 runs)  fastest
    ✔  ramda             7,095,954.59  ops/sec  ±2.77%  (90 runs)  -73.61%
    ✔  rambda            7,533,001.33  ops/sec  ±2.29%  (92 runs)  -71.98%
    ✔  lodash/fp         2,155,259.39  ops/sec  ±5.28%  (84 runs)  -91.98%

    ➔ Fastest is @mobily/ts-belt

  • unzip (function call inside `pipe`)....

    ✔  @mobily/ts-belt  24,736,131.32  ops/sec  ±3.25%  (93 runs)  fastest
    ✔  ramda             2,347,006.26  ops/sec  ±3.06%  (90 runs)  -90.51%
    ✔  rambda            6,246,303.36  ops/sec  ±3.73%  (90 runs)  -74.75%
    ✔  lodash/fp         1,948,104.50  ops/sec  ±1.00%  (91 runs)  -92.12%

    ➔ Fastest is @mobily/ts-belt

• ./simple/flat.js:

  • flat (single function call).....

    ✔  @mobily/ts-belt  27,959,037.52  ops/sec  ±7.98%  (92 runs)  fastest
    ✔  remeda            2,885,512.14  ops/sec  ±2.22%  (94 runs)  -89.68%
    ✔  ramda             2,132,851.06  ops/sec  ±2.46%  (90 runs)  -92.37%
    ✔  lodash/fp        16,332,737.01  ops/sec  ±3.32%  (84 runs)  -41.58%
    ✔  native            1,340,280.93  ops/sec  ±1.92%  (95 runs)  -95.21%

    ➔ Fastest is @mobily/ts-belt

  • flat (function call inside `pipe`)... ..

    ✔  @mobily/ts-belt  26,861,683.11  ops/sec  ±1.49%  (95 runs)  fastest
    ✔  remeda            2,005,725.19  ops/sec  ±7.30%  (88 runs)  -92.53%
    ✔  ramda             1,297,528.91  ops/sec  ±3.27%  (94 runs)  -95.17%
    ✔  lodash/fp         7,516,347.97  ops/sec  ±0.77%  (95 runs)  -72.02%
    ✔  native            1,321,531.75  ops/sec  ±1.20%  (96 runs)  -95.08%

    ➔ Fastest is @mobily/ts-belt

• ./simple/dropWhile.js:

  • dropWhile (single function call)....

    ✔  @mobily/ts-belt  42,437,095.93  ops/sec  ±0.74%  (94 runs)  -22.33%
    ✔  ramda            28,448,408.62  ops/sec  ±1.51%  (94 runs)  -47.93%
    ✔  rambda           54,636,355.51  ops/sec  ±2.51%  (93 runs)  fastest
    ✔  lodash/fp        12,455,180.75  ops/sec  ±1.56%  (88 runs)  -77.20%

    ➔ Fastest is rambda

  • dropWhile (function call inside `pipe`)....

    ✔  @mobily/ts-belt  28,578,309.41  ops/sec  ±3.63%  (88 runs)  fastest
    ✔  ramda             2,547,489.09  ops/sec  ±1.00%  (89 runs)  -91.09%
    ✔  rambda           16,897,510.76  ops/sec  ±0.65%  (94 runs)  -40.87%
    ✔  lodash/fp         1,070,406.39  ops/sec  ±1.65%  (92 runs)  -96.25%

    ➔ Fastest is @mobily/ts-belt

• ./simple/takeWhile.js:

  • takeWhile (single function call).....

    ✔  @mobily/ts-belt  57,620,176.56  ops/sec  ±0.95%  (94 runs)  -24.97%
    ✔  remeda            3,067,943.47  ops/sec  ±1.79%  (92 runs)  -96.00%
    ✔  ramda            31,358,477.45  ops/sec  ±1.03%  (91 runs)  -59.17%
    ✔  rambda           76,793,772.48  ops/sec  ±3.77%  (87 runs)  fastest
    ✔  lodash/fp        13,533,138.75  ops/sec  ±2.00%  (87 runs)  -82.38%

    ➔ Fastest is rambda

  • takeWhile (function call inside `pipe`).....

    ✔  @mobily/ts-belt  36,000,544.77  ops/sec  ±2.25%  (93 runs)  fastest
    ✔  remeda            2,428,210.45  ops/sec  ±4.45%  (90 runs)  -93.26%
    ✔  ramda             2,614,963.11  ops/sec  ±1.52%  (95 runs)  -92.74%
    ✔  rambda           19,262,417.41  ops/sec  ±1.15%  (94 runs)  -46.49%
    ✔  lodash/fp           878,022.01  ops/sec  ±4.17%  (84 runs)  -97.56%

    ➔ Fastest is @mobily/ts-belt

• ./simple/difference.js:

  • difference (single function call).....

    ✔  @mobily/ts-belt  13,101,248.43  ops/sec  ±3.12%  (89 runs)  fastest
    ✔  remeda            2,409,053.54  ops/sec  ±1.84%  (92 runs)  -81.61%
    ✔  ramda             6,324,022.65  ops/sec  ±1.87%  (94 runs)  -51.73%
    ✔  rambda            3,032,141.15  ops/sec  ±4.36%  (90 runs)  -76.86%
    ✔  lodash/fp         4,590,218.75  ops/sec  ±1.49%  (92 runs)  -64.96%

    ➔ Fastest is @mobily/ts-belt

  • difference (function call inside `pipe`).....

    ✔  @mobily/ts-belt  11,139,175.77  ops/sec  ±4.01%  (87 runs)  fastest
    ✔  remeda            1,865,015.32  ops/sec  ±2.54%  (90 runs)  -83.26%
    ✔  ramda             1,763,091.53  ops/sec  ±4.36%  (84 runs)  -84.17%
    ✔  rambda            2,874,026.54  ops/sec  ±1.23%  (94 runs)  -74.20%
    ✔  lodash/fp         1,006,881.58  ops/sec  ±1.45%  (95 runs)  -90.96%

    ➔ Fastest is @mobily/ts-belt

• ./simple/deepFlat.js:

  • deepFlat (single function call)......

    ✔  @mobily/ts-belt  20,255,675.34  ops/sec  ±0.74%  (97 runs)  fastest
    ✔  remeda            1,381,320.77  ops/sec  ±2.09%  (94 runs)  -93.18%
    ✔  ramda               857,668.49  ops/sec  ±1.48%  (91 runs)  -95.77%
    ✔  rambda           17,049,296.10  ops/sec  ±0.45%  (98 runs)  -15.83%
    ✔  lodash/fp         7,491,946.07  ops/sec  ±1.24%  (96 runs)  -63.01%
    ✔  native            1,127,784.53  ops/sec  ±0.22%  (97 runs)  -94.43%

    ➔ Fastest is @mobily/ts-belt

  • deepFlat (function call inside `pipe`)......

    ✔  @mobily/ts-belt  19,061,404.06  ops/sec  ±1.77%  (94 runs)  fastest
    ✔  remeda            1,111,547.24  ops/sec  ±1.40%  (97 runs)  -94.17%
    ✔  ramda               671,501.80  ops/sec  ±2.37%  (95 runs)  -96.48%
    ✔  rambda           10,919,783.75  ops/sec  ±1.41%  (95 runs)  -42.71%
    ✔  lodash/fp         4,968,973.20  ops/sec  ±1.00%  (99 runs)  -73.93%
    ✔  native            1,108,499.14  ops/sec  ±0.37%  (96 runs)  -94.18%

    ➔ Fastest is @mobily/ts-belt

• ./simple/reduce.js:

  • reduce (single function call)......

    ✔  @mobily/ts-belt  41,764,086.40  ops/sec  ±1.00%  (99 runs)  fastest
    ✔  remeda            2,585,955.77  ops/sec  ±1.40%  (94 runs)  -93.81%
    ✔  ramda            11,452,786.15  ops/sec  ±1.40%  (92 runs)  -72.58%
    ✔  rambda           13,685,717.85  ops/sec  ±1.71%  (97 runs)  -67.23%
    ✔  lodash/fp        10,761,561.16  ops/sec  ±1.73%  (85 runs)  -74.23%
    ✔  native           17,350,110.25  ops/sec  ±1.56%  (94 runs)  -58.46%

    ➔ Fastest is @mobily/ts-belt

  • reduce (function call inside `pipe`)......

    ✔  @mobily/ts-belt  25,231,876.48  ops/sec  ±1.35%  (98 runs)  fastest
    ✔  remeda            2,214,353.16  ops/sec  ±3.77%  (93 runs)  -91.22%
    ✔  ramda             2,297,437.05  ops/sec  ±0.50%  (96 runs)  -90.89%
    ✔  rambda            6,952,329.37  ops/sec  ±0.72%  (95 runs)  -72.45%
    ✔  lodash/fp         1,104,095.03  ops/sec  ±1.27%  (97 runs)  -95.62%
    ✔  native           14,522,180.38  ops/sec  ±0.92%  (98 runs)  -42.45%

    ➔ Fastest is @mobily/ts-belt

• ./simple/reject.js:

  • reject (single function call).....

    ✔  @mobily/ts-belt  37,949,200.56  ops/sec  ±2.50%  (88 runs)  -12.79%
    ✔  remeda            2,648,698.04  ops/sec  ±0.99%  (95 runs)  -93.91%
    ✔  ramda            27,026,860.62  ops/sec  ±1.64%  (92 runs)  -37.89%
    ✔  rambda           43,512,668.62  ops/sec  ±1.65%  (96 runs)  fastest
    ✔  lodash/fp         7,677,170.30  ops/sec  ±0.86%  (95 runs)  -82.36%

    ➔ Fastest is rambda

  • reject (function call inside `pipe`).....

    ✔  @mobily/ts-belt  25,851,090.13  ops/sec  ±2.04%  (92 runs)  fastest
    ✔  remeda            1,890,629.81  ops/sec  ±2.31%  (96 runs)  -92.69%
    ✔  ramda             2,769,972.54  ops/sec  ±1.15%  (96 runs)  -89.28%
    ✔  rambda           15,911,025.63  ops/sec  ±1.21%  (96 runs)  -38.45%
    ✔  lodash/fp         1,019,031.80  ops/sec  ±1.33%  (98 runs)  -96.06%

    ➔ Fastest is @mobily/ts-belt

• ./simple/intersection.js:

  • intersection (single function call).....

    ✔  @mobily/ts-belt  14,077,584.02  ops/sec  ±3.30%  (93 runs)  fastest
    ✔  remeda            2,484,022.94  ops/sec  ±2.00%  (96 runs)  -82.35%
    ✔  ramda             2,928,871.08  ops/sec  ±1.80%  (88 runs)  -79.19%
    ✔  rambda            7,830,327.78  ops/sec  ±1.01%  (96 runs)  -44.38%
    ✔  lodash/fp         4,479,883.32  ops/sec  ±1.29%  (97 runs)  -68.18%

    ➔ Fastest is @mobily/ts-belt

  • intersection (function call inside `pipe`).....

    ✔  @mobily/ts-belt  11,895,734.88  ops/sec  ±1.89%  (94 runs)  fastest
    ✔  remeda            1,918,402.34  ops/sec  ±1.99%  (99 runs)  -83.87%
    ✔  ramda             1,410,803.25  ops/sec  ±1.80%  (94 runs)  -88.14%
    ✔  rambda            6,010,407.97  ops/sec  ±0.29%  (97 runs)  -49.47%
    ✔  lodash/fp           944,214.45  ops/sec  ±1.60%  (93 runs)  -92.06%

    ➔ Fastest is @mobily/ts-belt

• ./simple/intersperse.js:

  • intersperse (single function call)...

    ✔  @mobily/ts-belt  37,360,790.50  ops/sec  ±0.64%  (94 runs)   -8.59%
    ✔  ramda            39,653,651.32  ops/sec  ±3.66%  (88 runs)   -2.98%
    ✔  rambda           40,871,320.59  ops/sec  ±1.30%  (93 runs)  fastest

    ➔ Fastest is rambda,ramda

  • intersperse (function call inside `pipe`)...

    ✔  @mobily/ts-belt  25,251,120.47  ops/sec  ±3.60%  (92 runs)  fastest
    ✔  ramda             2,837,801.37  ops/sec  ±1.12%  (96 runs)  -88.76%
    ✔  rambda           15,926,725.23  ops/sec  ±1.22%  (95 runs)  -36.93%

    ➔ Fastest is @mobily/ts-belt

• ./simple/flatMap.js:

  • flatMap (single function call).....

    ✔  @mobily/ts-belt  28,725,288.26  ops/sec  ±0.87%  (98 runs)  fastest
    ✔  remeda            1,589,993.41  ops/sec  ±2.77%  (94 runs)  -94.46%
    ✔  ramda             1,787,673.58  ops/sec  ±1.11%  (96 runs)  -93.78%
    ✔  rambda            5,280,070.90  ops/sec  ±0.87%  (98 runs)  -81.62%
    ✔  lodash/fp         5,860,647.31  ops/sec  ±0.87%  (97 runs)  -79.60%

    ➔ Fastest is @mobily/ts-belt

  • flatMap (function call inside `pipe`).....

    ✔  @mobily/ts-belt  22,626,123.96  ops/sec  ±1.76%  (99 runs)  fastest
    ✔  remeda            1,863,005.52  ops/sec  ±3.01%  (93 runs)  -91.77%
    ✔  ramda             1,076,960.09  ops/sec  ±4.16%  (91 runs)  -95.24%
    ✔  rambda            4,265,574.92  ops/sec  ±0.42%  (97 runs)  -81.15%
    ✔  lodash/fp           989,568.46  ops/sec  ±1.50%  (97 runs)  -95.63%

    ➔ Fastest is @mobily/ts-belt

• ./simple/fromPairs.js:

  • fromPairs (single function call)......

    ✔  @mobily/ts-belt  19,582,522.68  ops/sec  ±0.44%  (96 runs)  fastest
    ✔  remeda            3,173,443.93  ops/sec  ±2.26%  (97 runs)  -83.79%
    ✔  ramda             9,627,316.08  ops/sec  ±1.68%  (92 runs)  -50.84%
    ✔  rambda           17,298,778.87  ops/sec  ±0.54%  (98 runs)  -11.66%
    ✔  lodash/fp        15,261,690.75  ops/sec  ±1.21%  (95 runs)  -22.06%
    ✔  native            3,454,698.18  ops/sec  ±0.29%  (96 runs)  -82.36%

    ➔ Fastest is @mobily/ts-belt

  • fromPairs (function call inside `pipe`)......

    ✔  @mobily/ts-belt  18,618,109.97  ops/sec  ±0.85%  (93 runs)  fastest
    ✔  remeda            3,050,558.62  ops/sec  ±1.73%  (95 runs)  -83.62%
    ✔  ramda             2,851,191.38  ops/sec  ±0.59%  (99 runs)  -84.69%
    ✔  rambda           11,436,109.33  ops/sec  ±0.86%  (95 runs)  -38.58%
    ✔  lodash/fp         3,129,354.51  ops/sec  ±1.58%  (96 runs)  -83.19%
    ✔  native            3,293,230.44  ops/sec  ±0.58%  (97 runs)  -82.31%

    ➔ Fastest is @mobily/ts-belt

• ./simple/union.js:

  • union (single function call)....

    ✔  @mobily/ts-belt  13,284,856.63  ops/sec  ±3.36%  (95 runs)  fastest
    ✔  ramda             1,309,274.47  ops/sec  ±2.01%  (95 runs)  -90.14%
    ✔  rambda            7,064,489.50  ops/sec  ±1.04%  (93 runs)  -46.82%
    ✔  lodash/fp         5,014,892.85  ops/sec  ±0.82%  (96 runs)  -62.25%

    ➔ Fastest is @mobily/ts-belt

  • union (function call inside `pipe`)....

    ✔  @mobily/ts-belt  11,678,317.62  ops/sec  ±1.18%  (93 runs)  fastest
    ✔  ramda               867,447.79  ops/sec  ±1.22%  (99 runs)  -92.57%
    ✔  rambda            5,777,326.75  ops/sec  ±1.51%  (97 runs)  -50.53%
    ✔  lodash/fp           959,690.94  ops/sec  ±3.01%  (90 runs)  -91.78%

    ➔ Fastest is @mobily/ts-belt

• ./simple/groupBy.js:

  • groupBy (single function call).....

    ✔  @mobily/ts-belt  6,956,489.79  ops/sec  ±8.58%  (98 runs)   -3.51%
    ✔  remeda           1,872,247.43  ops/sec  ±2.14%  (96 runs)  -74.03%
    ✔  ramda            1,337,111.06  ops/sec  ±1.33%  (90 runs)  -81.45%
    ✔  rambda           7,209,711.48  ops/sec  ±2.49%  (93 runs)  fastest
    ✔  lodash/fp        3,792,787.87  ops/sec  ±1.73%  (98 runs)  -47.39%

    ➔ Fastest is rambda

  • groupBy (function call inside `pipe`).....

    ✔  @mobily/ts-belt  6,712,488.31  ops/sec  ±0.43%  (97 runs)  fastest
    ✔  remeda           1,741,097.16  ops/sec  ±0.29%  (97 runs)  -74.06%
    ✔  ramda              913,548.07  ops/sec  ±0.65%  (98 runs)  -86.39%
    ✔  rambda           5,496,694.24  ops/sec  ±2.24%  (97 runs)  -18.11%
    ✔  lodash/fp          891,187.64  ops/sec  ±1.50%  (95 runs)  -86.72%

    ➔ Fastest is @mobily/ts-belt

• ./simple/zip.js:

  • zip (single function call).....

    ✔  @mobily/ts-belt  24,854,244.64  ops/sec  ±0.91%  (99 runs)  fastest
    ✔  remeda            2,838,620.30  ops/sec  ±2.56%  (94 runs)  -88.58%
    ✔  ramda            22,034,027.23  ops/sec  ±2.91%  (89 runs)  -11.35%
    ✔  rambda           23,491,523.19  ops/sec  ±2.56%  (96 runs)   -5.48%
    ✔  lodash/fp         4,312,363.37  ops/sec  ±2.26%  (94 runs)  -82.65%

    ➔ Fastest is @mobily/ts-belt

  • zip (function call inside `pipe`).....

    ✔  @mobily/ts-belt  19,732,808.08  ops/sec  ±1.99%  (90 runs)  fastest
    ✔  remeda            2,534,144.20  ops/sec  ±0.28%  (97 runs)  -87.16%
    ✔  ramda             2,710,528.09  ops/sec  ±1.56%  (96 runs)  -86.26%
    ✔  rambda           12,309,388.36  ops/sec  ±1.03%  (97 runs)  -37.62%
    ✔  lodash/fp         1,027,718.88  ops/sec  ±1.75%  (97 runs)  -94.79%

    ➔ Fastest is @mobily/ts-belt

• ./simple/forEach.js:

  • forEach (single function call)......

    ✔  @mobily/ts-belt   86,238,053.34  ops/sec  ±2.09%  (95 runs)  -41.34%
    ✔  remeda             2,988,198.10  ops/sec  ±1.45%  (95 runs)  -97.97%
    ✔  ramda            133,379,669.52  ops/sec  ±0.90%  (93 runs)   -9.27%
    ✔  rambda           147,003,442.03  ops/sec  ±1.20%  (98 runs)  fastest
    ✔  lodash/fp          9,479,719.72  ops/sec  ±2.13%  (95 runs)  -93.55%
    ✔  native            24,588,194.81  ops/sec  ±0.86%  (95 runs)  -83.27%

    ➔ Fastest is rambda

  • forEach (function call inside `pipe`)......

    ✔  @mobily/ts-belt  49,701,088.33  ops/sec  ±0.80%  (96 runs)  fastest
    ✔  remeda            1,907,688.69  ops/sec  ±1.43%  (98 runs)  -96.16%
    ✔  ramda             3,038,196.42  ops/sec  ±0.30%  (96 runs)  -93.89%
    ✔  rambda           22,043,903.93  ops/sec  ±0.93%  (97 runs)  -55.65%
    ✔  lodash/fp         1,075,457.25  ops/sec  ±1.97%  (92 runs)  -97.84%
    ✔  native           17,938,006.28  ops/sec  ±1.40%  (98 runs)  -63.91%

    ➔ Fastest is @mobily/ts-belt

• ./simple/uniq.js:

  • uniq (single function call).....

    ✔  @mobily/ts-belt  15,767,874.39  ops/sec  ±0.99%  (94 runs)  -16.96%
    ✔  remeda            2,195,101.31  ops/sec  ±1.23%  (94 runs)  -88.44%
    ✔  ramda             1,149,864.72  ops/sec  ±1.55%  (92 runs)  -93.94%
    ✔  rambda            2,295,226.20  ops/sec  ±2.22%  (92 runs)  -87.91%
    ✔  lodash/fp        18,987,655.03  ops/sec  ±0.30%  (99 runs)  fastest

    ➔ Fastest is lodash/fp

  • uniq (function call inside `pipe`).....

    ✔  @mobily/ts-belt  13,475,975.40  ops/sec  ±0.89%  (97 runs)  fastest
    ✔  remeda            1,923,825.66  ops/sec  ±1.33%  (96 runs)  -85.72%
    ✔  ramda               871,163.57  ops/sec  ±1.02%  (95 runs)  -93.54%
    ✔  rambda            2,198,652.49  ops/sec  ±2.32%  (93 runs)  -83.68%
    ✔  lodash/fp         8,297,997.04  ops/sec  ±0.23%  (96 runs)  -38.42%

    ➔ Fastest is @mobily/ts-belt

• ./simple/toPairs.js:

  • toPairs (single function call)......

    ✔  @mobily/ts-belt  43,080,523.26  ops/sec  ±1.14%  (94 runs)  -18.39%
    ✔  remeda            3,459,299.15  ops/sec  ±2.41%  (94 runs)  -93.45%
    ✔  ramda            12,433,642.26  ops/sec  ±0.56%  (94 runs)  -76.45%
    ✔  rambda           52,787,824.97  ops/sec  ±0.93%  (98 runs)  fastest
    ✔  lodash/fp        12,906,073.81  ops/sec  ±3.66%  (94 runs)  -75.55%
    ✔  native           52,223,395.33  ops/sec  ±2.87%  (95 runs)   -1.07%

    ➔ Fastest is rambda

  • toPairs (function call inside `pipe`)......

    ✔  @mobily/ts-belt  38,382,974.34  ops/sec  ±0.55%  (98 runs)  fastest
    ✔  remeda            3,417,009.05  ops/sec  ±1.15%  (97 runs)  -91.10%
    ✔  ramda             3,059,257.09  ops/sec  ±1.28%  (95 runs)  -92.03%
    ✔  rambda           20,205,084.23  ops/sec  ±0.95%  (97 runs)  -47.36%
    ✔  lodash/fp         6,497,391.86  ops/sec  ±0.50%  (96 runs)  -83.07%
    ✔  native           37,780,486.65  ops/sec  ±0.44%  (95 runs)   -1.57%

    ➔ Fastest is @mobily/ts-belt

• ./simple/map.js:

  • map (single function call)......

    ✔  @mobily/ts-belt  54,912,486.07  ops/sec  ±0.82%  (97 runs)  -14.99%
    ✔  remeda            2,975,826.10  ops/sec  ±1.40%  (94 runs)  -95.39%
    ✔  ramda            43,052,471.08  ops/sec  ±1.90%  (93 runs)  -33.35%
    ✔  rambda           64,596,288.86  ops/sec  ±3.01%  (86 runs)  fastest
    ✔  lodash/fp        12,936,404.92  ops/sec  ±0.28%  (97 runs)  -79.97%
    ✔  native           18,881,873.43  ops/sec  ±0.45%  (96 runs)  -70.77%

    ➔ Fastest is rambda

  • map (function call inside `pipe`)......

    ✔  @mobily/ts-belt  33,312,294.93  ops/sec  ±0.74%  (99 runs)  fastest
    ✔  remeda            1,904,673.46  ops/sec  ±0.79%  (98 runs)  -94.28%
    ✔  ramda             2,793,550.41  ops/sec  ±1.23%  (99 runs)  -91.61%
    ✔  rambda           17,023,618.47  ops/sec  ±2.38%  (93 runs)  -48.90%
    ✔  lodash/fp         1,074,147.98  ops/sec  ±1.31%  (96 runs)  -96.78%
    ✔  native           14,965,987.12  ops/sec  ±1.70%  (96 runs)  -55.07%

    ➔ Fastest is @mobily/ts-belt

• ./simple/filter.js:

  • filter (single function call)......

    ✔  @mobily/ts-belt  43,806,190.96  ops/sec  ±0.42%  (99 runs)   -8.57%
    ✔  remeda            2,533,240.72  ops/sec  ±3.38%  (92 runs)  -94.71%
    ✔  ramda            34,022,166.40  ops/sec  ±1.93%  (90 runs)  -28.99%
    ✔  rambda           47,911,746.77  ops/sec  ±2.16%  (91 runs)  fastest
    ✔  lodash/fp         8,257,727.82  ops/sec  ±0.99%  (96 runs)  -82.76%
    ✔  native           17,473,928.93  ops/sec  ±0.26%  (97 runs)  -63.53%

    ➔ Fastest is rambda

  • filter (function call inside `pipe`)......

    ✔  @mobily/ts-belt  32,081,789.02  ops/sec  ±1.82%  (96 runs)  fastest
    ✔  remeda            1,840,693.56  ops/sec  ±2.21%  (95 runs)  -94.26%
    ✔  ramda             2,775,768.07  ops/sec  ±1.88%  (96 runs)  -91.35%
    ✔  rambda           16,996,791.85  ops/sec  ±0.91%  (95 runs)  -47.02%
    ✔  lodash/fp           847,919.63  ops/sec  ±4.37%  (85 runs)  -97.36%
    ✔  native           13,979,054.79  ops/sec  ±0.63%  (92 runs)  -56.43%

    ➔ Fastest is @mobily/ts-belt

• ./simple/find.js:

  • find (single function call)......

    ✔  @mobily/ts-belt   81,592,745.00  ops/sec  ±2.54%  (96 runs)  -47.23%
    ✔  remeda             3,208,070.61  ops/sec  ±0.88%  (97 runs)  -97.93%
    ✔  ramda            144,341,116.76  ops/sec  ±1.04%  (93 runs)   -6.65%
    ✔  rambda           154,630,881.98  ops/sec  ±0.26%  (92 runs)  fastest
    ✔  lodash/fp          9,922,550.04  ops/sec  ±0.69%  (95 runs)  -93.58%
    ✔  native            32,855,689.44  ops/sec  ±1.00%  (94 runs)  -78.75%

    ➔ Fastest is rambda

  • find (function call inside `pipe`)......

    ✔  @mobily/ts-belt  50,847,365.81  ops/sec  ±2.87%  (93 runs)  fastest
    ✔  remeda            2,087,136.81  ops/sec  ±1.28%  (99 runs)  -95.90%
    ✔  ramda             2,981,162.49  ops/sec  ±1.01%  (97 runs)  -94.14%
    ✔  rambda           21,875,299.55  ops/sec  ±1.42%  (96 runs)  -56.98%
    ✔  lodash/fp         1,010,251.93  ops/sec  ±1.54%  (95 runs)  -98.01%
    ✔  native           22,051,538.19  ops/sec  ±2.57%  (95 runs)  -56.63%

    ➔ Fastest is @mobily/ts-belt

• ./simple/splitEvery.js:

  • splitEvery/chunk (single function call).....

    ✔  @mobily/ts-belt  23,552,152.73  ops/sec  ±8.92%  (87 runs)  fastest
    ✔  remeda            2,685,696.05  ops/sec  ±1.90%  (92 runs)  -88.60%
    ✔  ramda            10,741,815.03  ops/sec  ±0.50%  (92 runs)  -54.39%
    ✔  rambda           16,678,616.06  ops/sec  ±2.44%  (90 runs)  -29.18%
    ✔  lodash/fp        12,395,255.08  ops/sec  ±2.73%  (87 runs)  -47.37%

    ➔ Fastest is @mobily/ts-belt

  • splitEvery/chunk (function call inside `pipe`).....

    ✔  @mobily/ts-belt  19,408,226.09  ops/sec  ±2.72%  (93 runs)  fastest
    ✔  remeda            2,755,891.48  ops/sec  ±0.81%  (94 runs)  -85.80%
    ✔  ramda             2,124,838.54  ops/sec  ±1.68%  (98 runs)  -89.05%
    ✔  rambda           10,072,925.82  ops/sec  ±1.89%  (96 runs)  -48.10%
    ✔  lodash/fp         1,104,293.72  ops/sec  ±0.84%  (94 runs)  -94.31%

    ➔ Fastest is @mobily/ts-belt

from ts-belt.

drewbitt avatar drewbitt commented on June 25, 2024

Very very different results than mine also on a Macbook M2 Pro for Remeda, but that may be the nature of benchmarks. Nice job @JUSTIVE

from ts-belt.

JUSTIVE avatar JUSTIVE commented on June 25, 2024

maybe the varied result caused by node version. I'll match to yours and check again.

from ts-belt.

JUSTIVE avatar JUSTIVE commented on June 25, 2024

I re-checked with node 18.19, not much difference from above. Which remeda version are you using? I see some rambda results beat ts-belt, but nothing from remeda. To clarify, I appended the version to each library's name.

• ./complex/map-filter-reduce.js:

• map → filter → reduce ......

✔  @mobily/ts-belt 4.0.0-rc.5  274,086.29  ops/sec  ±0.41%  (99 runs)  fastest
✔  remeda 1.47.1                28,327.85  ops/sec  ±1.87%  (92 runs)  -89.66%
✔  ramda 0.29.1                135,301.90  ops/sec  ±3.84%  (88 runs)  -50.64%
✔  rambda 9.1.0                160,691.05  ops/sec  ±0.95%  (96 runs)  -41.37%
✔  lodash/fp                    73,480.41  ops/sec  ±2.14%  (91 runs)  -73.19%
✔  native                       70,278.04  ops/sec  ±2.06%  (90 runs)  -74.36%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./complex/deepFlat-uniq-groupBy.js:

• deepFlat → uniq → groupBy .....

✔  @mobily/ts-belt 4.0.0-rc.5  2,210,395.95  ops/sec  ±6.97%  (91 runs)  fastest
✔  remeda 1.47.1                 408,273.54  ops/sec  ±2.73%  (85 runs)  -81.53%
✔  ramda 0.29.1                  286,045.96  ops/sec  ±2.52%  (95 runs)  -87.06%
✔  rambda 9.1.0                1,175,084.07  ops/sec  ±2.40%  (89 runs)  -46.84%
✔  lodash/fp                     534,755.68  ops/sec  ±1.46%  (93 runs)  -75.81%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/sort.js:

• sort (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  11,470,113.81  ops/sec  ±1.21%  (91 runs)  fastest
✔  remeda 1.47.1                1,601,326.29  ops/sec  ±1.53%  (97 runs)  -86.04%
✔  ramda 0.29.1                 2,989,288.18  ops/sec  ±3.05%  (91 runs)  -73.94%
✔  rambda 9.1.0                 3,123,883.84  ops/sec  ±1.84%  (93 runs)  -72.77%
✔  native                       3,084,947.27  ops/sec  ±3.24%  (82 runs)  -73.10%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• sort (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  8,370,870.03  ops/sec  ±2.27%  (91 runs)  fastest
✔  remeda 1.47.1               1,344,563.70  ops/sec  ±1.40%  (88 runs)  -83.94%
✔  ramda 0.29.1                1,400,537.15  ops/sec  ±3.16%  (89 runs)  -83.27%
✔  rambda 9.1.0                2,756,980.84  ops/sec  ±1.04%  (97 runs)  -67.06%
✔  native                      3,176,112.15  ops/sec  ±0.92%  (95 runs)  -62.06%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/unzip.js:

• unzip (single function call)....

✔  @mobily/ts-belt 4.0.0-rc.5  41,533,802.48  ops/sec  ±5.66%  (98 runs)  fastest
✔  ramda 0.29.1                 6,741,243.20  ops/sec  ±5.65%  (90 runs)  -83.77%
✔  rambda 9.1.0                 7,114,196.65  ops/sec  ±3.85%  (89 runs)  -82.87%
✔  lodash/fp                    2,124,418.83  ops/sec  ±4.33%  (91 runs)  -94.89%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• unzip (function call inside pipe)....

✔  @mobily/ts-belt 4.0.0-rc.5  32,950,254.12  ops/sec  ±1.18%  (96 runs)  fastest
✔  ramda 0.29.1                 2,387,258.65  ops/sec  ±1.99%  (93 runs)  -92.75%
✔  rambda 9.1.0                 5,864,227.86  ops/sec  ±2.85%  (95 runs)  -82.20%
✔  lodash/fp                    2,039,548.61  ops/sec  ±1.36%  (99 runs)  -93.81%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/flat.js:

• flat (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  21,410,699.07  ops/sec  ±2.38%  (96 runs)  fastest
✔  remeda 1.47.1                2,840,918.50  ops/sec  ±1.68%  (94 runs)  -86.73%
✔  ramda 0.29.1                 2,193,000.51  ops/sec  ±0.64%  (90 runs)  -89.76%
✔  lodash/fp                   17,080,386.35  ops/sec  ±0.42%  (99 runs)  -20.22%
✔  native                       1,340,696.59  ops/sec  ±0.94%  (92 runs)  -93.74%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• flat (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  19,534,262.07  ops/sec  ±2.92%  (98 runs)  fastest
✔  remeda 1.47.1                2,083,297.34  ops/sec  ±1.30%  (98 runs)  -89.34%
✔  ramda 0.29.1                 1,307,606.66  ops/sec  ±1.25%  (95 runs)  -93.31%
✔  lodash/fp                    7,244,091.02  ops/sec  ±2.96%  (95 runs)  -62.92%
✔  native                       1,290,860.25  ops/sec  ±1.90%  (95 runs)  -93.39%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/dropWhile.js:

• dropWhile (single function call)....

✔  @mobily/ts-belt 4.0.0-rc.5  40,266,471.53  ops/sec  ±0.39%  (97 runs)  -15.36%
✔  ramda 0.29.1                30,064,084.48  ops/sec  ±2.05%  (94 runs)  -36.80%
✔  rambda 9.1.0                47,573,297.08  ops/sec  ±2.66%  (91 runs)  fastest
✔  lodash/fp                   13,804,719.67  ops/sec  ±1.39%  (90 runs)  -70.98%

➔ Fastest is rambda 9.1.0

• dropWhile (function call inside pipe)....

✔  @mobily/ts-belt 4.0.0-rc.5  26,171,097.16  ops/sec  ±1.83%  (90 runs)  fastest
✔  ramda 0.29.1                 2,549,286.41  ops/sec  ±0.76%  (97 runs)  -90.26%
✔  rambda 9.1.0                16,671,947.16  ops/sec  ±2.18%  (95 runs)  -36.30%
✔  lodash/fp                    1,066,263.90  ops/sec  ±1.82%  (98 runs)  -95.93%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/takeWhile.js:

• takeWhile (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  53,179,497.19  ops/sec  ±2.30%  (96 runs)  -24.26%
✔  remeda 1.47.1                3,003,161.40  ops/sec  ±1.98%  (93 runs)  -95.72%
✔  ramda 0.29.1                33,406,800.41  ops/sec  ±0.61%  (94 runs)  -52.42%
✔  rambda 9.1.0                70,211,519.61  ops/sec  ±2.70%  (94 runs)  fastest
✔  lodash/fp                   15,069,924.68  ops/sec  ±1.57%  (92 runs)  -78.54%

➔ Fastest is rambda 9.1.0

• takeWhile (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  35,824,013.99  ops/sec  ±1.34%  (98 runs)   fastest
✔  remeda 1.47.1                2,467,270.59  ops/sec  ±1.25%  (91 runs)   -93.11%
✔  ramda 0.29.1                 2,577,769.16  ops/sec  ±0.24%  (101 runs)  -92.80%
✔  rambda 9.1.0                18,091,633.61  ops/sec  ±1.55%  (95 runs)   -49.50%
✔  lodash/fp                      785,232.75  ops/sec  ±4.04%  (90 runs)   -97.81%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/difference.js:

• difference (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  11,252,435.92  ops/sec  ±0.49%  (93 runs)  fastest
✔  remeda 1.47.1                2,293,258.02  ops/sec  ±2.66%  (92 runs)  -79.62%
✔  ramda 0.29.1                 5,979,769.76  ops/sec  ±2.63%  (85 runs)  -46.86%
✔  rambda 9.1.0                 3,313,031.56  ops/sec  ±1.82%  (93 runs)  -70.56%
✔  lodash/fp                    5,946,179.81  ops/sec  ±2.00%  (99 runs)  -47.16%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• difference (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  9,765,660.81  ops/sec  ±1.22%  (97 runs)   fastest
✔  remeda 1.47.1               1,865,344.82  ops/sec  ±1.35%  (97 runs)   -80.90%
✔  ramda 0.29.1                1,988,739.83  ops/sec  ±1.12%  (89 runs)   -79.64%
✔  rambda 9.1.0                2,839,216.82  ops/sec  ±0.35%  (101 runs)  -70.93%
✔  lodash/fp                   1,057,934.88  ops/sec  ±1.40%  (98 runs)   -89.17%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/deepFlat.js:

• deepFlat (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5  17,556,228.00  ops/sec  ±2.30%  (92 runs)  fastest
✔  remeda 1.47.1                1,352,557.71  ops/sec  ±1.89%  (95 runs)  -92.30%
✔  ramda 0.29.1                   824,947.15  ops/sec  ±2.04%  (92 runs)  -95.30%
✔  rambda 9.1.0                16,105,943.40  ops/sec  ±2.27%  (93 runs)   -8.26%
✔  lodash/fp                    7,392,041.72  ops/sec  ±1.02%  (96 runs)  -57.90%
✔  native                       1,074,789.83  ops/sec  ±2.18%  (97 runs)  -93.88%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• deepFlat (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  16,067,539.23  ops/sec  ±1.10%  (95 runs)   fastest
✔  remeda 1.47.1                1,061,496.48  ops/sec  ±1.28%  (91 runs)   -93.39%
✔  ramda 0.29.1                   661,144.90  ops/sec  ±0.28%  (100 runs)  -95.89%
✔  rambda 9.1.0                10,466,081.51  ops/sec  ±0.57%  (98 runs)   -34.86%
✔  lodash/fp                    4,874,019.55  ops/sec  ±0.25%  (91 runs)   -69.67%
✔  native                         985,416.52  ops/sec  ±3.73%  (91 runs)   -93.87%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/reduce.js:

• reduce (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5  37,949,182.90  ops/sec  ±3.66%  (85 runs)  fastest
✔  remeda 1.47.1                2,180,982.14  ops/sec  ±4.84%  (87 runs)  -94.25%
✔  ramda 0.29.1                10,163,363.36  ops/sec  ±6.91%  (83 runs)  -73.22%
✔  rambda 9.1.0                12,493,830.58  ops/sec  ±2.38%  (93 runs)  -67.08%
✔  lodash/fp                   10,599,462.54  ops/sec  ±2.04%  (91 runs)  -72.07%
✔  native                      16,903,757.06  ops/sec  ±0.44%  (99 runs)  -55.46%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• reduce (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  25,840,719.20  ops/sec  ±1.61%  (95 runs)  fastest
✔  remeda 1.47.1                2,021,280.30  ops/sec  ±2.01%  (96 runs)  -92.18%
✔  ramda 0.29.1                 2,023,564.85  ops/sec  ±2.25%  (97 runs)  -92.17%
✔  rambda 9.1.0                 6,233,053.01  ops/sec  ±1.28%  (97 runs)  -75.88%
✔  lodash/fp                    1,042,025.69  ops/sec  ±0.76%  (98 runs)  -95.97%
✔  native                      12,364,962.47  ops/sec  ±5.20%  (88 runs)  -52.15%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/reject.js:

• reject (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  36,518,484.21  ops/sec  ±6.17%  (86 runs)  -15.36%
✔  remeda 1.47.1                2,433,465.19  ops/sec  ±1.74%  (92 runs)  -94.36%
✔  ramda 0.29.1                28,088,181.92  ops/sec  ±2.24%  (84 runs)  -34.90%
✔  rambda 9.1.0                43,146,610.73  ops/sec  ±3.11%  (89 runs)  fastest
✔  lodash/fp                    7,549,494.72  ops/sec  ±0.87%  (95 runs)  -82.50%

➔ Fastest is rambda 9.1.0

• reject (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  27,168,264.30  ops/sec  ±0.91%  (95 runs)  fastest
✔  remeda 1.47.1                1,682,047.16  ops/sec  ±3.96%  (91 runs)  -93.81%
✔  ramda 0.29.1                 2,519,829.27  ops/sec  ±2.07%  (89 runs)  -90.73%
✔  rambda 9.1.0                14,196,084.88  ops/sec  ±4.30%  (90 runs)  -47.75%
✔  lodash/fp                      612,784.87  ops/sec  ±6.26%  (79 runs)  -97.74%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/intersection.js:

• intersection (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  11,899,777.45  ops/sec  ±5.02%  (86 runs)  fastest
✔  remeda 1.47.1                2,224,693.18  ops/sec  ±3.18%  (88 runs)  -81.30%
✔  ramda 0.29.1                 2,525,384.03  ops/sec  ±4.27%  (83 runs)  -78.78%
✔  rambda 9.1.0                 6,461,992.11  ops/sec  ±2.83%  (90 runs)  -45.70%
✔  lodash/fp                    4,176,759.65  ops/sec  ±1.11%  (91 runs)  -64.90%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• intersection (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  11,488,981.02  ops/sec  ±1.66%  (92 runs)  fastest
✔  remeda 1.47.1                1,880,992.62  ops/sec  ±1.28%  (97 runs)  -83.63%
✔  ramda 0.29.1                 1,298,295.31  ops/sec  ±4.34%  (91 runs)  -88.70%
✔  rambda 9.1.0                 5,328,068.58  ops/sec  ±2.05%  (88 runs)  -53.62%
✔  lodash/fp                      842,233.77  ops/sec  ±3.01%  (89 runs)  -92.67%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/intersperse.js:

• intersperse (single function call)...

✔  @mobily/ts-belt 4.0.0-rc.5  34,964,045.35  ops/sec  ±0.81%  (97 runs)  -10.58%
✔  ramda 0.29.1                37,363,850.88  ops/sec  ±3.80%  (86 runs)   -4.44%
✔  rambda 9.1.0                39,099,715.22  ops/sec  ±3.03%  (88 runs)  fastest

➔ Fastest is rambda 9.1.0,ramda 0.29.1

• intersperse (function call inside pipe)...

✔  @mobily/ts-belt 4.0.0-rc.5  23,472,319.16  ops/sec  ±2.71%  (90 runs)  fastest
✔  ramda 0.29.1                 2,676,769.28  ops/sec  ±1.83%  (97 runs)  -88.60%
✔  rambda 9.1.0                15,670,326.59  ops/sec  ±0.90%  (98 runs)  -33.24%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/flatMap.js:

• flatMap (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  27,554,329.56  ops/sec  ±0.55%  (98 runs)  fastest
✔  remeda 1.47.1                1,485,713.36  ops/sec  ±2.57%  (95 runs)  -94.61%
✔  ramda 0.29.1                 1,649,040.10  ops/sec  ±4.51%  (93 runs)  -94.02%
✔  rambda 9.1.0                 5,052,297.95  ops/sec  ±2.88%  (86 runs)  -81.66%
✔  lodash/fp                    6,177,422.76  ops/sec  ±1.00%  (93 runs)  -77.58%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• flatMap (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  20,713,097.77  ops/sec  ±2.66%  (88 runs)  fastest
✔  remeda 1.47.1                1,900,882.60  ops/sec  ±1.62%  (99 runs)  -90.82%
✔  ramda 0.29.1                 1,066,266.28  ops/sec  ±1.64%  (94 runs)  -94.85%
✔  rambda 9.1.0                 4,180,671.18  ops/sec  ±0.70%  (96 runs)  -79.82%
✔  lodash/fp                      930,694.13  ops/sec  ±2.03%  (96 runs)  -95.51%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/fromPairs.js:

• fromPairs (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5  18,659,187.95  ops/sec  ±0.62%  (96 runs)  fastest
✔  remeda 1.47.1                2,823,709.46  ops/sec  ±5.00%  (87 runs)  -84.87%
✔  ramda 0.29.1                 8,323,693.30  ops/sec  ±4.41%  (87 runs)  -55.39%
✔  rambda 9.1.0                15,586,753.07  ops/sec  ±3.36%  (91 runs)  -16.47%
✔  lodash/fp                   12,958,303.12  ops/sec  ±6.01%  (83 runs)  -30.55%
✔  native                       2,966,349.35  ops/sec  ±3.20%  (94 runs)  -84.10%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• fromPairs (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  17,193,447.93  ops/sec  ±1.57%  (93 runs)  fastest
✔  remeda 1.47.1                2,717,043.20  ops/sec  ±3.23%  (94 runs)  -84.20%
✔  ramda 0.29.1                 2,244,031.11  ops/sec  ±4.13%  (79 runs)  -86.95%
✔  rambda 9.1.0                 9,791,458.07  ops/sec  ±3.69%  (90 runs)  -43.05%
✔  lodash/fp                    2,949,288.79  ops/sec  ±0.68%  (98 runs)  -82.85%
✔  native                       2,858,947.62  ops/sec  ±2.29%  (95 runs)  -83.37%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/union.js:

• union (single function call)....

✔  @mobily/ts-belt 4.0.0-rc.5  11,283,517.23  ops/sec  ±0.97%  (97 runs)  fastest
✔  ramda 0.29.1                 1,216,779.46  ops/sec  ±1.75%  (94 runs)  -89.22%
✔  rambda 9.1.0                 6,206,815.00  ops/sec  ±1.14%  (93 runs)  -44.99%
✔  lodash/fp                    5,004,353.69  ops/sec  ±1.53%  (95 runs)  -55.65%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• union (function call inside pipe)....

✔  @mobily/ts-belt 4.0.0-rc.5  9,789,952.44  ops/sec  ±2.09%  (95 runs)  fastest
✔  ramda 0.29.1                  811,249.87  ops/sec  ±2.04%  (89 runs)  -91.71%
✔  rambda 9.1.0                5,235,353.04  ops/sec  ±1.51%  (92 runs)  -46.52%
✔  lodash/fp                   1,002,110.53  ops/sec  ±1.31%  (96 runs)  -89.76%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/groupBy.js:

• groupBy (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  6,374,053.27  ops/sec  ±8.37%  (93 runs)   -5.74%
✔  remeda 1.47.1               1,742,580.26  ops/sec  ±1.87%  (95 runs)  -74.23%
✔  ramda 0.29.1                1,261,807.27  ops/sec  ±2.09%  (88 runs)  -81.34%
✔  rambda 9.1.0                6,762,314.79  ops/sec  ±2.13%  (94 runs)  fastest
✔  lodash/fp                   3,775,651.94  ops/sec  ±1.30%  (98 runs)  -44.17%

➔ Fastest is rambda 9.1.0

• groupBy (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  6,125,701.80  ops/sec  ±1.45%  (100 runs)  fastest
✔  remeda 1.47.1               1,579,491.52  ops/sec  ±1.22%  (92 runs)   -74.22%
✔  ramda 0.29.1                  824,847.47  ops/sec  ±2.15%  (93 runs)   -86.53%
✔  rambda 9.1.0                5,200,721.90  ops/sec  ±2.41%  (94 runs)   -15.10%
✔  lodash/fp                     850,836.72  ops/sec  ±2.66%  (96 runs)   -86.11%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/zip.js:

• zip (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  24,095,239.83  ops/sec  ±8.90%  (95 runs)  fastest
✔  remeda 1.47.1                2,704,409.33  ops/sec  ±2.54%  (94 runs)  -88.78%
✔  ramda 0.29.1                19,613,493.67  ops/sec  ±4.17%  (79 runs)  -18.60%
✔  rambda 9.1.0                21,822,510.72  ops/sec  ±2.90%  (92 runs)   -9.43%
✔  lodash/fp                    3,961,368.46  ops/sec  ±1.53%  (94 runs)  -83.56%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• zip (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  18,594,967.64  ops/sec  ±2.85%  (89 runs)  fastest
✔  remeda 1.47.1                2,119,069.95  ops/sec  ±2.93%  (95 runs)  -88.60%
✔  ramda 0.29.1                 2,498,876.93  ops/sec  ±1.46%  (93 runs)  -86.56%
✔  rambda 9.1.0                10,650,610.51  ops/sec  ±4.19%  (84 runs)  -42.72%
✔  lodash/fp                      905,036.23  ops/sec  ±2.66%  (90 runs)  -95.13%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/forEach.js:

• forEach (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5  105,758,467.56  ops/sec  ±0.83%  (98 runs)  -30.34%
✔  remeda 1.47.1                 2,641,546.88  ops/sec  ±2.97%  (90 runs)  -98.26%
✔  ramda 0.29.1                149,483,815.15  ops/sec  ±0.60%  (96 runs)   -1.53%
✔  rambda 9.1.0                151,811,886.23  ops/sec  ±0.91%  (90 runs)  fastest
✔  lodash/fp                     9,353,648.21  ops/sec  ±0.61%  (97 runs)  -93.84%
✔  native                       23,197,164.64  ops/sec  ±3.07%  (89 runs)  -84.72%

➔ Fastest is rambda 9.1.0

• forEach (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  60,993,197.78  ops/sec  ±2.33%  (91 runs)  fastest
✔  remeda 1.47.1                1,835,078.84  ops/sec  ±1.64%  (94 runs)  -96.99%
✔  ramda 0.29.1                 2,809,797.61  ops/sec  ±1.08%  (93 runs)  -95.39%
✔  rambda 9.1.0                21,728,449.19  ops/sec  ±3.39%  (90 runs)  -64.38%
✔  lodash/fp                      987,979.67  ops/sec  ±2.13%  (95 runs)  -98.38%
✔  native                      16,945,352.06  ops/sec  ±1.24%  (94 runs)  -72.22%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/uniq.js:

• uniq (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  11,523,981.84  ops/sec  ±2.36%  (93 runs)  -54.38%
✔  remeda 1.47.1                2,087,028.26  ops/sec  ±1.65%  (97 runs)  -91.74%
✔  ramda 0.29.1                 1,118,777.77  ops/sec  ±1.76%  (87 runs)  -95.57%
✔  rambda 9.1.0                 2,340,914.97  ops/sec  ±0.92%  (98 runs)  -90.73%
✔  lodash/fp                   25,262,197.47  ops/sec  ±1.31%  (99 runs)  fastest

➔ Fastest is lodash/fp

• uniq (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  11,750,238.28  ops/sec  ±1.68%  (93 runs)  fastest
✔  remeda 1.47.1                1,790,751.77  ops/sec  ±1.25%  (98 runs)  -84.76%
✔  ramda 0.29.1                   829,938.01  ops/sec  ±1.41%  (98 runs)  -92.94%
✔  rambda 9.1.0                 1,980,804.70  ops/sec  ±2.90%  (90 runs)  -83.14%
✔  lodash/fp                    8,477,584.97  ops/sec  ±2.76%  (94 runs)  -27.85%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/toPairs.js:

• toPairs (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5  41,967,239.12  ops/sec  ±2.00%  (96 runs)  -12.90%
✔  remeda 1.47.1                3,416,704.86  ops/sec  ±2.12%  (97 runs)  -92.91%
✔  ramda 0.29.1                12,111,823.58  ops/sec  ±1.77%  (98 runs)  -74.86%
✔  rambda 9.1.0                47,849,505.45  ops/sec  ±2.66%  (94 runs)   -0.70%
✔  lodash/fp                   13,017,254.11  ops/sec  ±1.66%  (96 runs)  -72.98%
✔  native                      48,184,770.70  ops/sec  ±1.08%  (95 runs)  fastest

➔ Fastest is native,rambda 9.1.0

• toPairs (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  35,482,823.18  ops/sec  ±3.45%  (92 runs)  fastest
✔  remeda 1.47.1                3,164,783.62  ops/sec  ±0.70%  (94 runs)  -91.08%
✔  ramda 0.29.1                 2,730,241.28  ops/sec  ±2.40%  (93 runs)  -92.31%
✔  rambda 9.1.0                18,614,575.59  ops/sec  ±1.99%  (95 runs)  -47.54%
✔  lodash/fp                    6,179,840.82  ops/sec  ±1.55%  (96 runs)  -82.58%
✔  native                      32,951,513.78  ops/sec  ±3.39%  (94 runs)   -7.13%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/map.js:

• map (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5  70,371,137.80  ops/sec  ±0.96%  (98 runs)  -19.49%
✔  remeda 1.47.1                2,790,094.84  ops/sec  ±1.41%  (96 runs)  -96.81%
✔  ramda 0.29.1                53,572,704.29  ops/sec  ±0.89%  (93 runs)  -38.71%
✔  rambda 9.1.0                87,407,387.09  ops/sec  ±0.43%  (94 runs)  fastest
✔  lodash/fp                   14,001,332.02  ops/sec  ±2.25%  (97 runs)  -83.98%
✔  native                      18,845,989.02  ops/sec  ±0.63%  (94 runs)  -78.44%

➔ Fastest is rambda 9.1.0

• map (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  40,337,984.34  ops/sec  ±3.19%  (91 runs)  fastest
✔  remeda 1.47.1                1,754,909.18  ops/sec  ±3.06%  (92 runs)  -95.65%
✔  ramda 0.29.1                 2,634,114.92  ops/sec  ±2.38%  (89 runs)  -93.47%
✔  rambda 9.1.0                18,682,793.05  ops/sec  ±0.93%  (95 runs)  -53.68%
✔  lodash/fp                      774,544.88  ops/sec  ±7.91%  (85 runs)  -98.08%
✔  native                      14,236,929.72  ops/sec  ±2.63%  (91 runs)  -64.71%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/filter.js:

• filter (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5  44,416,036.76  ops/sec  ±0.84%  (96 runs)   -8.88%
✔  remeda 1.47.1                2,418,176.95  ops/sec  ±1.52%  (97 runs)  -95.04%
✔  ramda 0.29.1                31,287,091.86  ops/sec  ±1.94%  (90 runs)  -35.81%
✔  rambda 9.1.0                48,744,327.73  ops/sec  ±2.97%  (93 runs)  fastest
✔  lodash/fp                    7,906,730.36  ops/sec  ±1.48%  (93 runs)  -83.78%
✔  native                      16,674,528.24  ops/sec  ±0.53%  (97 runs)  -65.79%

➔ Fastest is rambda 9.1.0

• filter (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  31,183,534.30  ops/sec  ±2.10%  (97 runs)  fastest
✔  remeda 1.47.1                1,588,923.93  ops/sec  ±4.05%  (87 runs)  -94.90%
✔  ramda 0.29.1                 2,356,375.96  ops/sec  ±5.14%  (86 runs)  -92.44%
✔  rambda 9.1.0                14,433,725.04  ops/sec  ±3.82%  (84 runs)  -53.71%
✔  lodash/fp                      729,749.07  ops/sec  ±7.28%  (73 runs)  -97.66%
✔  native                      11,898,567.29  ops/sec  ±3.02%  (89 runs)  -61.84%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/find.js:

• find (single function call)......

✔  @mobily/ts-belt 4.0.0-rc.5   99,493,735.15  ops/sec  ±3.83%  (88 runs)  -27.09%
✔  remeda 1.47.1                 2,634,610.39  ops/sec  ±2.90%  (86 runs)  -98.07%
✔  ramda 0.29.1                123,605,094.37  ops/sec  ±7.16%  (78 runs)   -9.42%
✔  rambda 9.1.0                136,453,141.03  ops/sec  ±3.34%  (89 runs)  fastest
✔  lodash/fp                     8,413,142.48  ops/sec  ±6.67%  (82 runs)  -93.83%
✔  native                       32,286,657.35  ops/sec  ±2.79%  (94 runs)  -76.34%

➔ Fastest is rambda 9.1.0

• find (function call inside pipe)......

✔  @mobily/ts-belt 4.0.0-rc.5  59,417,019.17  ops/sec  ±1.27%  (93 runs)  fastest
✔  remeda 1.47.1                1,914,290.23  ops/sec  ±1.71%  (93 runs)  -96.78%
✔  ramda 0.29.1                 2,900,425.42  ops/sec  ±0.90%  (93 runs)  -95.12%
✔  rambda 9.1.0                21,737,956.78  ops/sec  ±2.21%  (93 runs)  -63.41%
✔  lodash/fp                      863,631.21  ops/sec  ±3.41%  (93 runs)  -98.55%
✔  native                      22,540,419.39  ops/sec  ±1.23%  (99 runs)  -62.06%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• ./simple/splitEvery.js:

• splitEvery/chunk (single function call).....

✔  @mobily/ts-belt 4.0.0-rc.5  25,457,417.61  ops/sec  ±0.60%  (96 runs)  fastest
✔  remeda 1.47.1                2,344,655.77  ops/sec  ±6.14%  (86 runs)  -90.79%
✔  ramda 0.29.1                 9,721,977.87  ops/sec  ±4.04%  (84 runs)  -61.81%
✔  rambda 9.1.0                15,330,614.99  ops/sec  ±4.38%  (88 runs)  -39.78%
✔  lodash/fp                   10,695,127.31  ops/sec  ±3.20%  (88 runs)  -57.99%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

• splitEvery/chunk (function call inside pipe).....

✔  @mobily/ts-belt 4.0.0-rc.5  18,909,403.57  ops/sec  ±2.40%  (92 runs)  fastest
✔  remeda 1.47.1                2,309,039.25  ops/sec  ±4.21%  (86 runs)  -87.79%
✔  ramda 0.29.1                 1,816,530.52  ops/sec  ±5.22%  (92 runs)  -90.39%
✔  rambda 9.1.0                 9,731,895.09  ops/sec  ±1.59%  (88 runs)  -48.53%
✔  lodash/fp                    1,021,855.46  ops/sec  ±1.88%  (93 runs)  -94.60%

➔ Fastest is @mobily/ts-belt 4.0.0-rc.5

from ts-belt.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.