Awesome. Thank you Sir / Madame for all your help and time.
Ran it thru my debugger and it looks such.
Lessons learnt:
> Will use Data::Dumper for debugging from now on.
> As to not using subroutine declarations, should I then disable the use strict 'subs';? I understand its an error to use subroutine_name when use strict 'subs' is in effect and the subroutine is not pre-declared. (You could use subroutine_name() though.) I just checked up Perl::Tidy and you are indeed correct that no subroutine declarations are done - subroutines are directly defined. Also in another of the perl scripts used by perl-support, the author ends up defining all the subroutines prior to using them. Would you encourage such authoring to be best-practice?