use warnings; use strict; use List::MoreUtils 'minmax'; my $envres = [ [], [], [{time=>0.002},{}] ]; my ($min, $max) = minmax(map {$_->{time}} @{$envres->[2]}); use Data::Dump 'dump'; dump $min, $max; __END__ Use of uninitialized value in subroutine entry at - line 5. Use of uninitialized value in subroutine entry at - line 5. (undef, 0.002)