Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
The so-called “naked” block is one without a keyword or condition. That is, suppose you
start with a while loop, which looks
something like this:
while (condition) {
body;
body;
body;
}
Now, take away the while
keyword and the conditional expression, and you’ll have a naked
block:
{
body;
body;
body;
}
The naked block is like a while
or foreach loop, except that it
doesn’t loop; it just executes the body of the loop once, and it’s done.
It’s an un-loop!
You’ll see in a while that there are other uses for the naked block, but one of its features is that it provides a scope for temporary lexical variables:
{
print "Please enter a number: ";
chomp(my $n = <STDIN>);
my $root = sqrt $n; # calculate the square root
print "The square root of $n is $root.\n";
}