Background: V8 announced a feature called pointer compression (What's happening in V8? - Benedikt Meurer), which is intended to reduce the memory overhead of pointers for 64-bit processes. Java JVM's had a feature called CompressedOops since 2010 (since 6u23). At a first glance, it looks similar but then I realized it is not quite the same.
Question: What are the main differences between the pointer compression techniques (V8 vs JVM)?
The V8 implementation seems to be still not finalized, but I found at least some references:
JVM implementation:
V8 implementation