If I'm not expecting this code to be used to generate strings with a huge number of members, I'd use an array.

sub number_sequence { my ($i, $step, $num) = @_; my @member = ( $i ); # caveat emptor: does not work if $num < 1; add guard if necessary push @member, $i += $step while --$num; return join " ", @member; }

In cases like this where calculations and string manipulation interleave, it's generally cleaner and more readable to separate the calculations from the string manipulation.

For small numbers of members this is even possibly more efficient than your code; but that isn't really a concern, as Ovid explained. What's more important to me is that this code is easier to change. I also prefer the iterative, additive approach over the multiplicative ones not for a desire for performance so much as one for minimalism on the conceptual level.

Makeshifts last the longest.


In reply to Re: String manipulation by Aristotle
in thread String manipulation by hotshot

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.