My biggest frustration with the Ocaml is with third-party libraries documentation. The majority of the docs are just function signatures without explanation, let alone usage examples.<p>The language however is quite nice and the stdlib is fairly complete.<p>Edit: Another problem I see is the (over?) reliance on PPX preprocessors. It does make a lot of tasks simpler, but it is too much magic for me personally.
Ocaml is rock solid as a foundation, yet the ecosystem appears to be very fragmented. For example, not only does Ocaml not support unicode strings natively, there are several competing libraries offering this functionality. This is just bizarre. Why is it like this? Not unicode specifically but like, in general. Doesn't Ocaml have some kind of language improvement process?
For string interpolation, check out: <a href="https://github.com/janestreet/ppx_string" rel="nofollow">https://github.com/janestreet/ppx_string</a><p>I was just remarking to a coworker Friday how happy this made me; you get to write nice, obvious, readable string expressions with the right substitions, for ~arbitrary types.