well, like I said before, if you just show ALL of your code, then we'd be able to know what happened.
On Wed, May 27, 2020 at 8:55 PM ToddAndMargo via perl6-users < perl6-us...@perl.org> wrote: > On 2020-05-27 07:27, Brad Gilbert wrote: > > The point was that 「say」 will print undefined values without complaining. > > > > Really debug statements should be more like: > > > > $*STDERR.put: 「%CommandLine<backup_path> = 」, > %CommandLine<backup_path>; > > > > Or more succinctly: > > > > dd %CommandLine<backup_path>; > > > > Which does bring to the forefront, why a duplicate > copy and paste of the same say line, one on > top of the other, first delivered a value from > another variable and the second one gave the correct > value. > > I have converted to this say free sort of stuff; > > if %Options< Debug > { > print " ParentDir = <$ParentDir>\n"; > print " NumBackups <$NumBackups> Rotates %Options< Rotates >\n"; > print " Sorted List = [" ~ @Sorted_List ~ "]\n"; > print " Ordered List = [" ~ @Ordered_List ~ "]\n"; > print " Rotated List = [" ~ @Rotated_List ~ "]\n"; > print " Reverse List = [" ~ @Reverse_Pruned_List ~ "]\n"; > print " Reverse_Pruned List = [" ~ @Reverse_Pruned_List ~ "]\n"; > print " Number of backup directories is $NumBackups\n\n"; > } > > > I like dd if I am interested in the structure of a variable > but avoid it if only the value is of interest. > > And I could never in a million years be able to > duplicate this issue for the developers >