Neocaml – Rubocop Creator's New OCaml Mode for Emacs

Rubocop’s maker drops Neocaml for Emacs—fans cheer, skeptics ask “why not an IDE”

TLDR: Bozhidar Batsov (Rubocop’s creator) launched Neocaml, a modern OCaml mode for Emacs with smarter coloring and a built‑in prompt. Comments split between praise for his track record and “just use an IDE,” turning it into a classic Emacs‑versus‑IDE debate over how OCaml tooling should evolve.

Rubocop’s creator, Bozhidar Batsov, just launched Neocaml, a fresh mode for the ultra‑customizable editor Emacs, aimed at coding in the language OCaml. It promises modern, reliable code coloring via TreeSitter (a smart parser), snappy indenting, easy file toggling, and a built‑in REPL (an interactive prompt). The vibe? “As cool as Neo.”

The comments lit up. Fans cheered and pointed to Batsov’s Emacs “receipts” like Projectile and CIDER, with one calling it “more relevant as credentials.” Another poked the bear: why not use a real IDE instead? That sparked the eternal Emacs vs IDE showdown—do you want ultimate tweakability or a plug‑and‑play toolbox?

There’s side‑eye at two earlier tree‑sitter OCaml modes that fizzled, making the “third time’s the charm” quip feel like a dare. The pitch also takes aim at older tools—caml‑mode is “ancient” and tuareg “a beast”—pouring fuel on the nostalgia‑versus‑simplicity debate. Meme energy rolled in with Matrix jokes, while practical folks circled the goodies: language‑server support for smart help, one‑command grammar installs, and quick jumps between files. Verdict from the crowd: hopeful hype with a dash of “prove it,” as everyone waits to see if Neocaml really dodges the bullets old modes couldn’t.

Key Points

  • Neocaml is a new Emacs package offering Tree-sitter powered major modes for OCaml (.ml) and OCaml interface (.mli) files.
  • Features include multi-level syntax highlighting, modern indentation, structured navigation, Imenu categories, REPL integration, and compilation error parsing.
  • The package integrates with Eglot and works with ocaml-eglot and ocamllsp, automatically setting correct language IDs.
  • Installation is available via MELPA or directly from GitHub, with a command to install required Tree-sitter grammars.
  • Neocaml aims to provide a lean alternative to legacy caml-mode and complex tuareg-mode, with planned integration for the dune build system.

Hottest takes

"I think Bozhidar's other projects[0][1][2] are more relevant as "credentials" for an Emacs mode" — riffraff
"Aren't there specific IDEs for OCaml like for more mainstream languages?" — kleiba
"great news Bozhidar always makes fantastic stuff" — beanjuiceII
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.