#!/usr/local/bin/perl $\ = "\n"; $, = " "; print sum(1); print sum(1,2,3); print square(5,5); # compute and return the sum of a list sub sum { $sum = 0; # iterating through subroutine arguments for (@_) { # $_ alias to each argument $sum += $_; } return $sum; } sub square { $num = @_; return $num**2; } sub makesequence { %args = @_; } $b= 0 if ! defined $b; print make_sequence(len=>10,bp=>"at"); print make_sequence(bp=>"gcn",len=>0); # create a random n-mer from a specified vocabulary sub make_sequence { %args = @_; @bp = split("",$args{bp}); $seq = ""; for (1..$args{len}) { $seq .= $bp[rand(@bp)]; } return $seq; } print urds(5); sub urds { my ($n) = @_; @urds = (); for (1..$n) { push @urds, rand; } return @urds; } $seq = "atgctggg"; ($x) = filter_seq($seq,"gc"); print $x; sub filter_seq { ($seq,$testbp) = @_; @passedseq = (); for (split("",$seq)) { push @passedseq, $_ if /[$testbp]/; $_ = 1; } return scalar @passedseq; }