in reply to Determining gaps in time ranges

When computing with integer ranges, Set::IntSpan is a useful module:
use Set::IntSpan; use warnings; use strict; my $set_spec1 = '21-45'; my $set_spec2 = '44-60'; my $set = new Set::IntSpan $set_spec1; my $u_set = union $set $set_spec2; my $runlist = run_list $u_set ; print $runlist;
This prints 21-60.

Now, computiing integer ranges from your times (60*hour+ minute), you can combine ranges as above.

-Mark