I can't reproduce this problem. What pike version, and what $TERM?
>In a sidenote, why doesn't > > | > random(10000000000000000); > | (3) Result: 694383321 > >work as expected, when > > | > random(100000000000000000000000000000); > | (2) Result: 1637481850962819326860743609 > >does? I expect it's because different code is used depending on whether the argument is a bignum or not. It seems like the code generating non-bignum random numbers is limited to generating 32 bits of random data (a bug).
