#!/usr/bin/perl
# Learning RPerl, Chapter 3, Exercise 1
# Print user-supplied list of strings in reverse order
# [[[ HEADER ]]]
use
RPerl;
use
strict;
use
warnings;
our
$VERSION
= 0.001_000;
# [[[ CRITICS ]]]
## no critic qw(ProhibitUselessNoCritic ProhibitMagicNumbers RequireCheckedSyscalls) # USER DEFAULT 1: allow numeric values & print operator
## no critic qw(ProhibitExplicitStdin) # USER DEFAULT 4: allow <STDIN> prompt
# [[[ OPERATIONS ]]]
my
string_arrayref
$input_strings
= [];
'Please input zero or more strings, separated by <ENTER>, ended by <CTRL-D>:'
,
"\n"
;
while
(
my
string
$input_string
= <STDIN>) {
push
@{
$input_strings
},
$input_string
;
}
"\n"
;
'Strings in reverse order:'
,
"\n"
;
my
string_arrayref
$input_strings_reversed
= [
reverse
@{
$input_strings
}];
foreach
my
string
$input_strings_reversed_element
(@{
$input_strings_reversed
}) {
$input_strings_reversed_element
;
}