in reply to check if a value is in a given set

Smart-matching seems to work OK.

use 5.010; my @set = qw/banana plum apple strawberry pear/; my $var = "apple"; if ($var ~~ @set) { say "yes"; }

There are also hashes which might be a tad faster if your set is large.

my %set = map { $_ => 1 } qw/banana plum apple strawberry pear/; if (exists $set{$var}) { say "yes"; }