From 0e6db1f9d21b415ec83e8b6814598c3f20380304 Mon Sep 17 00:00:00 2001 From: soumajit23 Date: Fri, 1 Mar 2024 12:40:26 +0530 Subject: [PATCH 1/5] refactor(is-cube-number): refactor the `is-cube-number` benchmarks to measure affirmative/negative test values --- .../is-cube-number/benchmark/benchmark.js | 108 ++---------------- 1 file changed, 10 insertions(+), 98 deletions(-) diff --git a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js index b431f358d284..4b738f047d90 100644 --- a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js @@ -16,7 +16,7 @@ * limitations under the License. */ -/* eslint-disable no-new-wrappers, no-empty-function */ +/* eslint-disable no-empty-function */ 'use strict'; @@ -31,13 +31,12 @@ var isCubeNumber = require( './../lib' ); // MAIN // -bench( pkg+'::primitives', function benchmark( b ) { +bench( pkg+'::primitives,true', function benchmark( b ) { var values; var bool; var i; values = [ - '5', 5, 4, 0.5, @@ -45,42 +44,7 @@ bench( pkg+'::primitives', function benchmark( b ) { 0.0, 3.14, -5, - -4, - NaN, - true, - false, - null, - void 0 - ]; - - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber( values[ i % values.length ] ); - if ( typeof bool !== 'boolean' ) { - b.fail( 'should return a boolean' ); - } - } - b.toc(); - if ( !isBoolean( bool ) ) { - b.fail( 'should return a boolean' ); - } - b.pass( 'benchmark finished' ); - b.end(); -}); - -bench( pkg+'::objects', function benchmark( b ) { - var values; - var bool; - var i; - - values = [ - [], - {}, - function noop() {}, - new Number( 8.0 ), - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ) + -4 ]; b.tic(); @@ -98,21 +62,13 @@ bench( pkg+'::objects', function benchmark( b ) { b.end(); }); -bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { +bench( pkg+'::primitives,false', function benchmark( b ) { var values; var bool; var i; values = [ '5', - 5, - 4, - 3.14, - 0.5, - 1.0, - 0.0, - -5, - -4, NaN, true, false, @@ -122,7 +78,7 @@ bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { b.tic(); for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); + bool = isCubeNumber( values[ i % values.length ] ); if ( typeof bool !== 'boolean' ) { b.fail( 'should return a boolean' ); } @@ -135,15 +91,12 @@ bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { b.end(); }); -bench( pkg+'::objects:isPrimitive', function benchmark( b ) { +bench( pkg+'::objects,true', function benchmark( b ) { var values; var bool; var i; values = [ - [], - {}, - function noop() {}, new Number( 8.0 ), new Number( 0.5 ), new Number( NaN ), @@ -152,44 +105,7 @@ bench( pkg+'::objects:isPrimitive', function benchmark( b ) { b.tic(); for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); - if ( typeof bool !== 'boolean' ) { - b.fail( 'should return a boolean' ); - } - } - b.toc(); - if ( !isBoolean( bool ) ) { - b.fail( 'should return a boolean' ); - } - b.pass( 'benchmark finished' ); - b.end(); -}); - -bench( pkg+'::primitives:isObject', function benchmark( b ) { - var values; - var bool; - var i; - - values = [ - '5', - 5, - 4, - 3.14, - 0.5, - 1.0, - 0.0, - -5, - -4, - NaN, - true, - false, - null, - void 0 - ]; - - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber.isObject( values[ i % values.length ] ); + bool = isCubeNumber( values[ i % values.length ] ); if ( typeof bool !== 'boolean' ) { b.fail( 'should return a boolean' ); } @@ -202,7 +118,7 @@ bench( pkg+'::primitives:isObject', function benchmark( b ) { b.end(); }); -bench( pkg+'::objects:isObject', function benchmark( b ) { +bench( pkg+'::objects,false', function benchmark( b ) { var values; var bool; var i; @@ -210,16 +126,12 @@ bench( pkg+'::objects:isObject', function benchmark( b ) { values = [ [], {}, - function noop() {}, - new Number( 8.0 ), - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ) + function noop() {} ]; b.tic(); for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber.isObject( values[ i % values.length ] ); + bool = isCubeNumber( values[ i % values.length ] ); if ( typeof bool !== 'boolean' ) { b.fail( 'should return a boolean' ); } From e810454d7722b8c13fffff39e7cbf5366eb32858 Mon Sep 17 00:00:00 2001 From: soumajit23 Date: Sat, 2 Mar 2024 16:25:15 +0530 Subject: [PATCH 2/5] refactor(is-cube-number): put values that result in true for benchmark functions --- .../is-cube-number/benchmark/benchmark.js | 37 ++++++++++++------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js index 4b738f047d90..c5e67051a3da 100644 --- a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js @@ -37,14 +37,14 @@ bench( pkg+'::primitives,true', function benchmark( b ) { var i; values = [ - 5, - 4, - 0.5, + 8, + 64, 1.0, - 0.0, - 3.14, - -5, - -4 + -27, + -8.0, + 125, + -1000.0, + -8 ]; b.tic(); @@ -73,7 +73,9 @@ bench( pkg+'::primitives,false', function benchmark( b ) { true, false, null, - void 0 + void 0, + -6, + 7.25 ]; b.tic(); @@ -97,10 +99,14 @@ bench( pkg+'::objects,true', function benchmark( b ) { var i; values = [ - new Number( 8.0 ), - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ) + new Number( 8 ), + new Number( 64 ), + new Number( 1.0 ), + new Number( -27 ), + new Number( -8.0 ), + new Number( 125 ), + new Number( -1000.0 ), + new Number( -8 ) ]; b.tic(); @@ -126,7 +132,12 @@ bench( pkg+'::objects,false', function benchmark( b ) { values = [ [], {}, - function noop() {} + function noop() {}, + new Number( 0.5 ), + new Number( NaN ), + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ) ]; b.tic(); From a58892aed12cf9876a4f99c7b781dbae1838da6d Mon Sep 17 00:00:00 2001 From: soumajit23 Date: Sat, 2 Mar 2024 17:47:08 +0530 Subject: [PATCH 3/5] refactor(is-cube-number): restored is-primitive and is-object benchmarks --- .../is-cube-number/benchmark/benchmark.js | 134 ++++++++++++++++++ 1 file changed, 134 insertions(+) diff --git a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js index c5e67051a3da..cecb7d008c0d 100644 --- a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js @@ -154,3 +154,137 @@ bench( pkg+'::objects,false', function benchmark( b ) { b.pass( 'benchmark finished' ); b.end(); }); + +bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + '5', + 5, + 4, + 3.14, + 0.5, + 1.0, + 0.0, + -5, + -4, + NaN, + true, + false, + null, + void 0 + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::objects:isPrimitive', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + [], + {}, + function noop() {}, + new Number( 8.0 ), + new Number( 0.5 ), + new Number( NaN ), + new Number( 3.14 ) + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::primitives:isObject', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + '5', + 5, + 4, + 3.14, + 0.5, + 1.0, + 0.0, + -5, + -4, + NaN, + true, + false, + null, + void 0 + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isObject( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::objects:isObject', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + [], + {}, + function noop() {}, + new Number( 8.0 ), + new Number( 0.5 ), + new Number( NaN ), + new Number( 3.14 ) + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isObject( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); From ab86e06665aaa5f78b4e0d0efcfc54bff10ef110 Mon Sep 17 00:00:00 2001 From: Soumajit Chatterjee <121816890+soumajit23@users.noreply.github.com> Date: Sun, 31 Mar 2024 00:03:23 +0530 Subject: [PATCH 4/5] bench: update benchmark.js Signed-off-by: Soumajit Chatterjee <121816890+soumajit23@users.noreply.github.com> --- .../is-cube-number/benchmark/benchmark.js | 229 ++++++++++++++++-- 1 file changed, 204 insertions(+), 25 deletions(-) diff --git a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js index cecb7d008c0d..6c80e817e540 100644 --- a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js @@ -155,26 +155,28 @@ bench( pkg+'::objects,false', function benchmark( b ) { b.end(); }); -bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { +bench( pkg+'::primitives:isPrimitive,true', function benchmark( b ) { var values; var bool; var i; values = [ - '5', - 5, - 4, - 3.14, - 0.5, + 8, + 64, 1.0, - 0.0, - -5, - -4, + -27, + -8.0, + 125, + -1000.0, + -8, + '5', NaN, true, false, null, - void 0 + void 0, + -6, + 7.25 ]; b.tic(); @@ -192,19 +194,29 @@ bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { b.end(); }); -bench( pkg+'::objects:isPrimitive', function benchmark( b ) { +bench( pkg+'::primitives:isPrimitive,false', function benchmark( b ) { var values; var bool; var i; values = [ + new Number( 8 ), + new Number( 64 ), + new Number( 1.0 ), + new Number( -27 ), + new Number( -8.0 ), + new Number( 125 ), + new Number( -1000.0 ), + new Number( -8 ), [], {}, function noop() {}, - new Number( 8.0 ), new Number( 0.5 ), new Number( NaN ), - new Number( 3.14 ) + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ) + ]; b.tic(); @@ -222,26 +234,145 @@ bench( pkg+'::objects:isPrimitive', function benchmark( b ) { b.end(); }); -bench( pkg+'::primitives:isObject', function benchmark( b ) { +bench( pkg+'::objects:isPrimitive,true', function benchmark( b ) { var values; var bool; var i; values = [ + 8, + 64, + 1.0, + -27, + -8.0, + 125, + -1000.0, + -8, '5', - 5, - 4, - 3.14, - 0.5, + NaN, + true, + false, + null, + void 0, + -6, + 7.25 + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::objects:isPrimitive,false', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + new Number( 8 ), + new Number( 64 ), + new Number( 1.0 ), + new Number( -27 ), + new Number( -8.0 ), + new Number( 125 ), + new Number( -1000.0 ), + new Number( -8 ), + [], + {}, + function noop() {}, + new Number( 0.5 ), + new Number( NaN ), + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ) + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::primitives:isObject,true', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + new Number( 8 ), + new Number( 64 ), + new Number( 1.0 ), + new Number( -27 ), + new Number( -8.0 ), + new Number( 125 ), + new Number( -1000.0 ), + new Number( -8 ), + [], + {}, + function noop() {}, + new Number( 0.5 ), + new Number( NaN ), + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ) + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isObject( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::primitives:isObject,false', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + 8, + 64, 1.0, - 0.0, - -5, - -4, + -27, + -8.0, + 125, + -1000.0, + -8, + '5', NaN, true, false, null, - void 0 + void 0, + -6, + 7.25 ]; b.tic(); @@ -259,19 +390,67 @@ bench( pkg+'::primitives:isObject', function benchmark( b ) { b.end(); }); -bench( pkg+'::objects:isObject', function benchmark( b ) { +bench( pkg+'::objects:isObject,true', function benchmark( b ) { var values; var bool; var i; values = [ + new Number( 8 ), + new Number( 64 ), + new Number( 1.0 ), + new Number( -27 ), + new Number( -8.0 ), + new Number( 125 ), + new Number( -1000.0 ), + new Number( -8 ), [], {}, function noop() {}, - new Number( 8.0 ), new Number( 0.5 ), new Number( NaN ), - new Number( 3.14 ) + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ) + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isObject( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::objects:isObject,false', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + 8, + 64, + 1.0, + -27, + -8.0, + 125, + -1000.0, + -8, + '5', + NaN, + true, + false, + null, + void 0, + -6, + 7.25 ]; b.tic(); From 0fc1724e5ae37f40a47bd001b3bfcd5460bcb9a8 Mon Sep 17 00:00:00 2001 From: Philipp Burckhardt Date: Sat, 7 Sep 2024 15:35:28 -0400 Subject: [PATCH 5/5] bench: update benchmark values --- .../is-cube-number/benchmark/benchmark.js | 192 ++++-------------- 1 file changed, 34 insertions(+), 158 deletions(-) diff --git a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js index 6c80e817e540..63f9b6d15d42 100644 --- a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js @@ -39,12 +39,12 @@ bench( pkg+'::primitives,true', function benchmark( b ) { values = [ 8, 64, - 1.0, + 1, -27, - -8.0, + -8, 125, - -1000.0, - -8 + -1000, + 27 ]; b.tic(); @@ -101,12 +101,12 @@ bench( pkg+'::objects,true', function benchmark( b ) { values = [ new Number( 8 ), new Number( 64 ), - new Number( 1.0 ), + new Number( 1 ), new Number( -27 ), - new Number( -8.0 ), + new Number( -8 ), new Number( 125 ), - new Number( -1000.0 ), - new Number( -8 ) + new Number( -1000 ), + new Number( 27 ) ]; b.tic(); @@ -130,14 +130,14 @@ bench( pkg+'::objects,false', function benchmark( b ) { var i; values = [ - [], - {}, - function noop() {}, - new Number( 0.5 ), + new Number( 5 ), new Number( NaN ), new Number( 3.14 ), new Number( -6 ), - new Number( 7.25 ) + new Number( 7.25 ), + [], + {}, + function noop() {} ]; b.tic(); @@ -163,20 +163,12 @@ bench( pkg+'::primitives:isPrimitive,true', function benchmark( b ) { values = [ 8, 64, - 1.0, + 1, -27, - -8.0, - 125, - -1000.0, -8, - '5', - NaN, - true, - false, - null, - void 0, - -6, - 7.25 + 125, + -1000, + 27 ]; b.tic(); @@ -200,54 +192,6 @@ bench( pkg+'::primitives:isPrimitive,false', function benchmark( b ) { var i; values = [ - new Number( 8 ), - new Number( 64 ), - new Number( 1.0 ), - new Number( -27 ), - new Number( -8.0 ), - new Number( 125 ), - new Number( -1000.0 ), - new Number( -8 ), - [], - {}, - function noop() {}, - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ), - new Number( -6 ), - new Number( 7.25 ) - - ]; - - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); - if ( typeof bool !== 'boolean' ) { - b.fail( 'should return a boolean' ); - } - } - b.toc(); - if ( !isBoolean( bool ) ) { - b.fail( 'should return a boolean' ); - } - b.pass( 'benchmark finished' ); - b.end(); -}); - -bench( pkg+'::objects:isPrimitive,true', function benchmark( b ) { - var values; - var bool; - var i; - - values = [ - 8, - 64, - 1.0, - -27, - -8.0, - 125, - -1000.0, - -8, '5', NaN, true, @@ -281,64 +225,20 @@ bench( pkg+'::objects:isPrimitive,false', function benchmark( b ) { values = [ new Number( 8 ), new Number( 64 ), - new Number( 1.0 ), + new Number( 1 ), new Number( -27 ), - new Number( -8.0 ), - new Number( 125 ), - new Number( -1000.0 ), new Number( -8 ), - [], - {}, - function noop() {}, - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ), - new Number( -6 ), - new Number( 7.25 ) - ]; - - b.tic(); - for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); - if ( typeof bool !== 'boolean' ) { - b.fail( 'should return a boolean' ); - } - } - b.toc(); - if ( !isBoolean( bool ) ) { - b.fail( 'should return a boolean' ); - } - b.pass( 'benchmark finished' ); - b.end(); -}); - -bench( pkg+'::primitives:isObject,true', function benchmark( b ) { - var values; - var bool; - var i; - - values = [ - new Number( 8 ), - new Number( 64 ), - new Number( 1.0 ), - new Number( -27 ), - new Number( -8.0 ), new Number( 125 ), - new Number( -1000.0 ), - new Number( -8 ), + new Number( -1000 ), + new Number( 27 ), [], {}, - function noop() {}, - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ), - new Number( -6 ), - new Number( 7.25 ) + function noop() {} ]; b.tic(); for ( i = 0; i < b.iterations; i++ ) { - bool = isCubeNumber.isObject( values[ i % values.length ] ); + bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); if ( typeof bool !== 'boolean' ) { b.fail( 'should return a boolean' ); } @@ -357,14 +257,6 @@ bench( pkg+'::primitives:isObject,false', function benchmark( b ) { var i; values = [ - 8, - 64, - 1.0, - -27, - -8.0, - 125, - -1000.0, - -8, '5', NaN, true, @@ -398,20 +290,12 @@ bench( pkg+'::objects:isObject,true', function benchmark( b ) { values = [ new Number( 8 ), new Number( 64 ), - new Number( 1.0 ), + new Number( 1 ), new Number( -27 ), - new Number( -8.0 ), - new Number( 125 ), - new Number( -1000.0 ), new Number( -8 ), - [], - {}, - function noop() {}, - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ), - new Number( -6 ), - new Number( 7.25 ) + new Number( 125 ), + new Number( -1000 ), + new Number( 27 ) ]; b.tic(); @@ -435,22 +319,14 @@ bench( pkg+'::objects:isObject,false', function benchmark( b ) { var i; values = [ - 8, - 64, - 1.0, - -27, - -8.0, - 125, - -1000.0, - -8, - '5', - NaN, - true, - false, - null, - void 0, - -6, - 7.25 + new Number( 5 ), + new Number( NaN ), + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ), + [], + {}, + function noop() {} ]; b.tic();