Exercise: DNA Sequence Analyzer with callback
The above can work, but if the file is huge, we might not be able to hold all the list in memory. Change the read_file function that to allow the user to supply the analyze function (or rather the reference to the analyze function) as a parameter. See the skeleton below. The output should be the same as above.
#!/usr/bin/perl
use strict;
use warnings;
my $file = 'dna.txt';
my @dna_sequences = read_file(\&analyze_dna, $file);
sub analyze_dna {
my ($dna) = @_;
if ($dna =~ /(.)\1/) {
print "$dna has double $1\n";
}
}
sub read_file {
...
return;
}