a) Yes I run technology at a more serious HFT firm than Jane Street.
b) Jane Street also use FPGAs, so you cannot exactly say they just use ocaml, it’s more nuanced than that, they are using a mixture of technologies. I think they made a very unfortunate choice early on and are still paying for it.
Rust becomes extremely painful as soon as you want to push the boundary. If you need to ensure you fit a struct into a cacheline, or you need to ensure an object is reused. All of these things can be done, even things like recycled intrusive structures, but it’s constant friction.
If you don’t try and push the boundaries it’s fine (and if you make everything unsafe you’d also be fine), but otherwise life quickly becomes painful.
If you are going to go to that level of effort then you’ll find it much easier in c++ and the downsides of c++ become insignificant.
On the other hand if you’re writing a web backend c++ would be a terrible terrible choice.