Next priority for OCaml?

There’s actually an OCaml plugin for IntelliJ, but afaik it’s not at the level of support that other languages have. I primarily have experience with Scala in IntelliJ IDEA, and the things I benefit most from are:

  • Automatic imports. The OCaml equivalent would be automatically adding a library to a dune file when I use its module.
  • Jump to definition. We have this already, but only one level deep, and beyond that we are told to vendor libraries, which is not really satisfactory imho.
  • Type and docs on hover. We have this and it’s quite serviceable. There’s maybe some room for improvement.
  • Project-wide refactors like renaming. This is not really at the same level, e.g. if I change a name in the implementation, it’s not changed for me in the interface. Sure, the compiler catches this, but a best-in-class IDE does it.
  • Autocomplete. We mostly have this at the module level. One big problem is still that typing in autocompletes as in_channel, and it’s needlessly difficult to stop that.
  • Opening a browser with library documentation. This should not be very difficult, all the basic pieces are there.

Anyway, this is not to make demands but rather to talk about the remaining gaps which, of course, we hope will be filled with time. If I can say one thing though–imho all of the above are more important than even sophisticated debugging support, and then typed effects and modular implicits. They are also unfortunately much more boring :slight_smile:

6 Likes