When learning is a good time to get into good habits. A few things have been pointed out by previous posters, but lets look at your whole sample and see where it can be improved.

First, using strictures is highly recommended - well done. But it is more conventional now to use use warnings; instead of -w on the command line to enable warnings.

Don't "pre-declare" variables. Declare them where you first need them and generally initialise them at the same time. Get into the habit of using sensible variable names. Short names are ok where they are only used in a small scope, but even then meaningful names can help a lot in understanding code. In particular avoid $a and $b because they have special meaning in the context of sort.

Rolling these suggestions into those from previous replies and applying the scalar fix suggested elsewhere your sample code turns into something like:

#!/usr/bin/perl -w use strict ; my ($a, @line) ; print "Please specify a file." ; chomp ($a = <STDIN>) ; open ($a) ; foreach @line ($a) { print reverse(@line); }

Prints (given the script file as input):

Please specify a file: noname.pl lrep/nib/rsu/!# ;tcirts esu ;sgninraw esu ;" :elif a yficeps esaelP" tnirp ;)>NIDTS< = emanelif$ ym(pmohc ;"n\!$ :emanelif$ nepo t'naC" eid ro emanelif$ ,'<' ,nIelif$ ym nepo { )>nIelif$< = enil$ ym( elihw ;)enil$(esrever ralacs tnirp }
True laziness is hard work

In reply to Re: I am geting an unhelpful error message. Not sure how to debug it. by GrandFather
in thread I am geting an unhelpful error message. Not sure how to debug it. by Socrates440

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.