This repository was archived by the owner on Jul 13, 2020. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 44 </ script >
55 < script src ="../dist/es6-module-loader.js "> </ script >
66 < script >
7+ /* PARAMETERS */
8+ var TREE_DEPTH = 2 ;
9+ var NUM_MODULES = 1000 ;
10+
11+
712 System . set ( 'module0' , System . newModule ( { } ) ) ;
813 System . instantiate = function ( load ) {
14+ var num = load . name . substr ( 6 ) ;
15+
16+ var deps = [ ] ;
17+ if ( num % TREE_DEPTH > 0 )
18+ deps = [ 'module' + ( num - 1 ) ] ;
19+
920 return {
10- deps : [ 'module' + ( load . name . substr ( 6 ) - 1 ) ] ,
21+ deps : deps ,
1122 execute : function ( ) {
1223 eval ( load . source ) ;
1324 return System . newModule ( { } ) ;
1829 function start ( ) {
1930 document . body . innerHTML = '' ;
2031 var startTime = + Date . now ( ) ;
21- for ( var i = 1 ; i <= 1000 ; i ++ )
32+
33+ for ( var i = 1 ; i <= NUM_MODULES ; i ++ )
2234 System . define ( 'module' + i , "function q() {} var p = 5;\n // non-trivial code" ) ;
23- System . import ( 'module1000' ) . then ( function ( ) {
24- document . body . innerHTML = ( ( Date . now ( ) - startTime ) / 1000 ) + 'ms per module' ;
35+ var promises = [ ] ;
36+ for ( var i = NUM_MODULES ; i > 1 ; i -- ) {
37+ promises . push ( System . import ( 'module' + i ) ) ;
38+ }
39+ Promise . all ( promises ) . then ( function ( ) {
40+ document . body . innerHTML = ( ( Date . now ( ) - startTime ) / NUM_MODULES ) + 'ms per module' ;
2541 } ) . catch ( function ( e ) {
2642 setTimeout ( function ( ) {
2743 throw e ;
You can’t perform that action at this time.
0 commit comments