in reply to Re: Advice on goto usage?
in thread Advice on goto usage?

I'm not sure exactly how you wanted your script to work, but here's my attempt at a more structured version of your code.

Take notice that I've use 'eq' instead of '=' when comparing the values. '=' is the assignment operator, it doesn't compare two strings. Don't feel bad though, it's one of the biggest gotchas, and _everybody_ has done it at some point.

You also need to chomp the value from STDIN, as this will always have a new line ('\n') char at the end, and comparing $string eq "whatever" won't work because of the extra character

print("Type R to re-enter the values or Type E to exit:\n"); my @values; while (<STDIN>) { my $value = $_; chomp($value); last if $value eq 'E'; if ($value eq 'R') { @values = (); print "values have been cleared\n"; } else { push(@values, $value); } } print join(',', @values) . "\n";