Integer values up to 917476 bits (see TIP 237)
get stored in a special packed Tcl_Obj intrep for
mp_ints . To parse a string rep of an integer of
that size requires about 30 seconds, and the
string rep getting parsed is roughly 200000
digits/characters/bytes long.
Larger integer values are permitted using an
unpacked intrep representation. However,
imagining string reps growing up to Tcl's
limits of roughly 2000000000 digits/chars/bytes,
the N^2 algorithm(s) used to parse bite hard,
and a reasonable guess is about 40 years
to parse such a string into its mp_int
equivalent.
An alternative with smaller complexity for switching over to at
some point is needed if operations on these
values are ever to be of any actual use.
The same problem in reverse arises when
producing the string rep of a large mp_int
value.