Would you accept a global cache for the result of `Version#segments` as a first step? That's where the real hotspot is.

Also, what sort of implications are you referring to? Out of interest. (Happy to read the discussion if you can point me to it.)