jabowery has asked for the wisdom of the Perl Monks concerning the following question:

The mystery is why "print" doesn't work for bigrat when entered in the debugger:
$ cat t use bigrat; print 1/3 + 1/4,"\n"; # produces 7/12 $ perl -d t Loading DB routines from perl5db.pl version 1.33 Editor support available. Enter h or `h h' for help, or `man perldebug' for more help. main::(t:2): print 1/3 + 1/4,"\n"; # produces 7/12 + DB<1> print 1/3 + 1/4,"\n" 0.583333333333333 + DB<2> n 7/12 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. $ perl -v This is perl 5, version 14, subversion 2 (v5.14.2) built for x86_64-li +nux-gnu-thread-multi (with 75 registered patches, see perl -V for more detail)

Replies are listed 'Best First'.
Re: Debugging bigrat? (perl5db.pl scope)
by Anonymous Monk on Jun 02, 2013 at 05:14 UTC

    The mystery is why "print" doesn't work for bigrat when entered in the debugger:

    scope is scope

    $ perl -de 1 Loading DB routines from perl5db.pl version 1.33 Editor support available. Enter h or `h h' for help, or `perldoc perldebug' for more help. main::(-e:1): 1 DB<1> use bigrat; DB<2> print 1/3 + 1/4,"\n"; 0.583333333333333 DB<3> use bigrat; print 1/3 + 1/4,"\n"; 7/12 DB<4> q
      "scope is scope" but what you are really saying is that the debugger's scope is not the same as that of the program it is debugging.

      How can one activate bigrat in the debugger's scope?