Sometimes, using our imense psychic powers, we can tell what the error message is without being told, but sometimes we get it wrong. You are best to just tell us. Copy and Paste is your friend. It is also good practise to include a sample script the reproduces the problem. Yours does not. I can't run your sample code and see the error. The following code does show warning and most likely it is the one that you see:

use strict; use warnings; my $input; my $temp = 'more stuff'; print $input.$temp."\n";

This shows the warning Use of uninitialized value in concatenation (.) or string.

None if this is pertinent to your question title however. What you are really asking is Is it better to interpolate variables into a string or concatenate them. There is no one answer and at the end of the day do what you can read best (Perl changes it all around internally anyway). However, you never need to do both so $input="$input"."$temp"; is bogus. That can better be written as $input = $input . $temp;, or even better as $input .= $temp;.


DWIM is Perl's answer to Gödel

In reply to Re: What is the right way of concatenating strings by GrandFather
in thread What is the right way of concatenating strings by cool

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.