OCaml is a great language. However, the tooling for newbies is kinda confusing. Here’s a guide to setup a working OCaml development environment in neovim on MacOS.

Install opam

$ brew install opam

Install ocaml 4.09.0

$ opam switch create 4.09.0 4.09.0 # follow the instructions to setup bash env

Install utop(REPL) and dune(build system)

$ opam install utop dune

Setup editor

Install ocaml-lsp

Setup LSP in neovim with coc.nvim https://github.com/neoclide/coc.nvim/wiki/Language-servers

You need to install all dependencies (with dune) and build it once to get a working LSP.

Build a project

Let’s test our environment on an existing project.