To get 8 random numbers from the list, I used random.
It requires 5.10 though...
#!/usr/bin/perl
use 5.010;
use strict;
use warnings;
use random qw(integer);
use Data::Dumper::Concise;
my @array = (4 .. 20);
for (0 .. 7) {
my $array = 4 + rand 20;
print Dumper($array);
}