Skip to content

Commit 3b0d306

Browse files
authored
Optimization for Eq Array
Running Eq on large nested data structures can be expensive (think rose trees with 10^5 items), so checking for reference equality before traversing the array can result in some significant gains.
1 parent da43e7d commit 3b0d306

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

src/Data/Eq.js

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ exports.refEq = function (r1) {
99
exports.eqArrayImpl = function (f) {
1010
return function (xs) {
1111
return function (ys) {
12+
if (xs === ys) return true;
1213
if (xs.length !== ys.length) return false;
1314
for (var i = 0; i < xs.length; i++) {
1415
if (!f(xs[i])(ys[i])) return false;

0 commit comments

Comments
 (0)