in reply to Re^3: Perl or my terminal?
in thread Perl or my terminal?

... in the latter you loop, while in the former you output each line as one string. Could that be the reason?

Yep! You hit the nail on the head. The following C version produces the same weird output:

#include <stdlib.h> int main( int argc, char **argv ) { int i; char l[1000] = { 0, }; for( i=0; i<99; i++ ) sprintf( &l[ i * 10 ], "%s", "123456789 " ); printf( "%s\n", l ); for( i=0; i<99; i++ ) l[ i ] = 0; for( i=0; i<125; i++ ) sprintf( &l[ i * 3 ], "%s", "xx\t" ); printf( "%s\n", l ); return 0; }

And, if I redirect any of the correct versions to a file and then use the type command to display them, it results in the groups of 3 behaviour. The terminal driver is screwed.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
"Too many [] have been sedated by an oppressive environment of political correctness and risk aversion."