$ perl -d pi2.pl Loading DB routines from perl5db.pl version 1.55 Editor support available. Enter h or 'h h' for help, or 'man perldebug' for more help. main::(pi2.pl:9): my $NUM_THREADS = 5; DB<1> source 3.scope.txt >> #source 2.scope.txt >> f Genius.pm Choosing /usr/local/share/perl/5.30.0/Sub/Genius.pm matching 'Genius.pm': >> b 282 >> s main::(pi2.pl:11): my $preplan = q{ main::(pi2.pl:12): ( main::(pi2.pl:13): step0 main::(pi2.pl:14): & main::(pi2.pl:15): step1 main::(pi2.pl:16): & main::(pi2.pl:17): step2 main::(pi2.pl:18): & main::(pi2.pl:19): step3 main::(pi2.pl:20): & main::(pi2.pl:21): step4 main::(pi2.pl:22): & main::(pi2.pl:23): step5 main::(pi2.pl:24): ) main::(pi2.pl:25): reduce >> n main::(pi2.pl:28): my $final_scope = Sub::Genius->new( preplan => $preplan )->run_any( scope => { sum => 0.0, num_steps => 1_000_000, pi => undef } ); >> n Sub::Genius::run_once(/usr/local/share/perl/5.30.0/Sub/Genius.pm:282): 282: eval sprintf( qq{%s%s(\$opts{scope});}, $opts{ns}, $sub ); >> p $sub step >> v 279 # main run loop - run once 280: local $@; 281: foreach my $sub (@seq) { 282==>b eval sprintf( qq{%s%s(\$opts{scope});}, $opts{ns}, $sub ); 283: die $@ if $@; # be nice and die for easier debuggering 284 } 285 } 286: return $opts{scope}; 287 } 288 >> >> s Sub::Genius::run_once((eval 44)[/usr/local/share/perl/5.30.0/Sub/Genius.pm:282]:1): 1: main::step($opts{scope}); >> v 1==> main::step($opts{scope}); 2 ; >> s main::AUTOLOAD(pi2.pl:33): our $AUTOLOAD; >> v 30: printf qq{pi = %f\n}, $final_scope->{pi}; 31 32 sub AUTOLOAD { 33==> our $AUTOLOAD; 34: my $sub = $AUTOLOAD; 35: $sub =~ s/.*:://; 36: die if $sub !~ m/^step([\d]+)/; 37: my $step_id = $1; 38 39 # deal with 'step' >> b 35 >> c main::AUTOLOAD(pi2.pl:35): $sub =~ s/.*:://; >> n main::AUTOLOAD(pi2.pl:36): die if $sub !~ m/^step([\d]+)/; >> p $sub step >> p $sub !~ m/^step([\d]+)/ 1 >> #save 3.scope.txt DB<10> s Sub::Genius::run_once(/usr/local/share/perl/5.30.0/Sub/Genius.pm:283): 283: die $@ if $@; # be nice and die for easier debuggering DB<10> s Died at pi2.pl line 36. at /usr/local/share/perl/5.30.0/Sub/Genius.pm line 283. Sub::Genius::run_once(Sub::Genius=HASH(0x564d07b619b8), "scope", HASH(0x564d07e0f210)) called at /usr/local/share/perl/5.30.0/Sub/Genius.pm line 245 Sub::Genius::run_any(Sub::Genius=HASH(0x564d07b619b8), "scope", HASH(0x564d07e0f210)) called at pi2.pl line 28 Debugged program terminated. Use q to quit or R to restart, use o inhibit_exit to avoid stopping after program termination, h q, h R or h o to get additional info. DB<10>