'allows pauseless garbage collection regardless of the Java heap size'. I thought this is not possible.
Clearly it is, since the C4 collector manages to do it. To be fair though, the "pauseless" part does come at the cost of a slight slowdown in normal code execution since it instates read barriers to work its magic. This means the lack of pauses is paid for by significantly higher overall CPU overhead for garbage collection compared to a collector design that does include pauses. It could be worth it for some workloads where it is very important to have low 99th percentile response times though.
Touché :-)
I'm pretty sure that Jane Street begs to differ. They're a OCaml company and they do very well on high frequency trading.
Does the ocaml backend do the high frequency trading?