in reply to simple substitution
use Readonly; Readonly my $UPPERLIMIT => 10; ...
And, though I think I'm the only one who's ever used this feature, perl has the -P option which will actually pass your script through the C preprocessor before interpreting and running. In that case, you could just use #define for constants just like in C and C++. But, that wouldn't be very 'perlish', would it.
These may not be what you need (especially the -P option), but I do like Readonly a little better than use constant.
---
echo S 1 [ Y V U | perl -ane 'print reverse map { $_ = chr(ord($_)-1) } @F;'
|
|---|