Memoize is useful, but having to specify routines seems a bit backwards.
ie.
sub my_subroutine { .. do stuff .. }
memoize('my_subroutine');
Luckily, you can enable a method annotation instead, with
Attribute::Memoize:
ie.
sub my_subroutine :Memoize { .. do stuff .. }
tjc