Well Nim's strings are not JavaScript's strings, so we need to represent them differently. And for that JavaScript arrays should be close to optimal, but maybe a lazy object that just overrides [] would be better. (If that is actually possible with JavaScript.)