What's wrong with the "less helpful" template?

That is the interesting part. And it surprises me that I have never been caught by this in my years of occasional programming. I am still chewing on that aspect.

Both approaches return the same result.

Not quite, your tests are flawed. I wanted references to the same memory objects ("thingie" is out of style?) so running @flat through both your and my code is suspect on its face. When I comment out the while loop I don't get a happy result.

On a side note: In the "not-thinking" part I started on a recursive solution; when I hit some snags and applied some thought map seemed a clear win. I should study the methods to go from one to the other: iter. vs. recurs.

Using a shorter array:

my $ar = [ [ 'a', ], [ 'b, 'c', ], ]; my $flat = flat( $ar ); print Dumper $ar, $flat;
should yield:
$VAR1 = [ [ 'a' ], [ 'b', 'c' ] ]; $VAR2 = [ \$VAR1->[0][0], \$VAR1->[1][0], \$VAR1->[1][1] ];

In reply to Re^2: "Nonliteral literal" is just an expression. by rir
in thread "Nonliteral literal" is just an expression. by rir

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