calculate.pl dialog $ ./calculate.pl EQUALS (undefined) OK CLEAR OK EQUALS = 0 OK PLUS 42 OK EQUALS = 42 OK OVER 7 OK TIMES 3 OK MINUS 3 OK EQUALS = 15 OK explode Invalid statement #### $ ./calculate.pl > EQUALS (undefined) OK > CLEAR OK > EQUALS = 0 OK > PLUS 42 OK > EQUALS = 42 OK > OVER 7 OK > TIMES 3 OK > MINUS 3 OK > EQUALS = 15 OK > explode Invalid statement > #### #!/usr/bin/perl use strict; use warnings; my $total; print "> "; while(my $line = <>){ chomp $line; my ($cmd, $num) = split " ", $line, 2; process($cmd,$num,$total); print "OK\n\>"; } sub process{ my($cmd,$num,$total) = @_; print "COMMAND: $cmd, VALUE: $num, TOTAL: $total \n"; }