in reply to File splitting script

I think you found a bug in perl. The length parameter is being treated as an unsigned integer (UV), but is being stored as a signed integer (IV). (Or is it the other way around?). In any case, any attempt to specify a length of greater than 2**31-1 results in the "Negative length" error. (Tested on AS811 and AS817 under XP):

[0] Perl> open I, '<:raw', '32GB.dat.bz2';; [0] Perl> read( I, $c, 2147483648 );; [Negative length at (eval 4) line 1, <STDIN> line 2. ] Perl> read( I, $c, 2147483647 );;

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."