I believe there are different limitations which need to be taken into account:
+ The JavaScript Number type, which can represent integers up to 2^53
+ The Java long type, which can represent integers up to 2^64
+ The actual implementation of slice (I do not know what C type they
use internally. Hopefully that would be a size_t or something like
that, but one would have to look at the actual code to be sure).
Then there is the question of conversions. GWT represents java long as
some kind of struct containing two 32-bits numbers and they have a
library to deal with that.
I believe we could raise the bar a bit a allow for file size and
offsets up to 2^53, by doing the following:
+ use the long type in the GWT API everywhere a file size or a file
offset is required.
+ use strings to pass the parameters between Java and JavaScript
I have created a new branch on github to prototype this (called
big-files). Let me know what you think about it. Notably if you have a
way to test that against truly big files (> 2GB), I'd be glad to hear
if it actually solves the problem.
Regards
Lukas