You can't use it as-is, because it uses
defined-or ( $var //= 'new'; ), a perl-5.10 feature. Here's a patch to fix that
--- perl5db.pl 2007-12-18 11:38:11.000000000 -0800
+++ perl5dbFOR5.8.pl 2008-10-17 18:00:50.812500000 -0700
@@ -6025,7 +6025,7 @@
} ## end sub setterm
sub load_hist {
- $histfile //= option_val("HistFile", undef);
+ $histsize = option_val("HistFile",undef) unless defined $hintsize
+;#patch-5.8 $histfile //= option_val("HistFile", undef);
return unless defined $histfile;
open my $fh, "<", $histfile or return;
local $/ = "\n";
@@ -6043,7 +6043,7 @@
eval { require File::Basename } or return;
File::Path::mkpath(File::Basename::dirname($histfile));
open my $fh, ">", $histfile or die "Could not open '$histfile': $
+!";
- $histsize //= option_val("HistSize",100);
+ $histsize = option_val("HistSize",100) unless defined $hintsize;#
+patch-5.8 $histsize //= option_val("HistSize",100);
my @copy = grep { $_ ne '?' } @hist;
my $start = scalar(@copy) > $histsize ? scalar(@copy)-$histsize :
+ 0;
for ($start .. $#copy) {