Ostensibly Perl 6 is meant to be a language ready for the next hundred years.

As such, I am wondering where either Perl 6 or its implementations have hard-coded limits based on current or projected hardware limitations, or where they don't.

Examples of what I would like to know, do any limits exist on each of the following and if so then what are they?

(Pretend the actual hardware has infinite memory so we wouldn't run out of hardware first.)

1.  Maximum size of a (non-machine) integer?

2.  Maximum number of elements in an array?

3.  Maximum number of elements in a hash?

4.  Maximum number of bytes/codepoints/etc in a character string?

Possible reasons for the limits include that a fixed-size integer may be used to record the count of elements in a collection, including to mark the size of a collection having pieces of a bigint, or using a fixed-size integer for indexing into an array, say.

Following the above, does the Perl 6 language specify any such limits, or does it define the above things to be infinite?

Do any Perl 6 implementations support the above being infinite, or do they use fixed-size numbers to track anything that would effectively limit the types?

Thank you.

-- Darren Duncan

Reply via email to