note
petral
Much cleaner! Putting the increment back in and not skipping a line at the end yields a "more intresting"<b>*</b> result (63 chars):
<code>
perl -ln0e's/\s+/ /g;print$"x(40-($c=2+length$&)/2),$&while/.{0$c,}? |.+/g' a.txt w.txt
a
a a a
a a a a a
a a a a a a a
a a a a a a a a a
a a a a a a a a a a
The same principle applies
to any text file, basically splitting
words only on spaces or new lines
perl -ln0e's/\s+/ /g;print$"x(40-($c=2+length$&)/2),$&while/.{0$c,}? |.+/g' w.txt a.txt
The
same principle
applies to any text
file, basically splitting
words only on spaces or new lines
a a a a a a a a a a a a a a a a a a a
a a a a a a a a a a a a a a a a
</code>
(I know, I know. I'm the only one who could possibly still be interested at this point.)
<br><br><b>* update</b> "more interesting" meaning more <i><|triangular|></i>  (than the original challenge).
<br><br>And, moving even deeper into 'useless use of code in void context':<code>
print($"x(40-($c=2+length$&)/2),$&),$c*=($c<80)while...
</code>will make triangles of files of any length (a step towards automated obfusification?).
<br><br><i>p</i><br><br>
75004
75560