Metals Reimagined - LSP in the age of LLMs
We are currently working on Metals 2, which is a new indexing and compilation approach, designed to make indexing as fast as possible and ensure the editor remains functional even if parts of the project fail to compile. Thanks to this even while working on large monorepos it should be possible to quickly set up your editor.
Metals is the Scala and Java Language Server, providing IDE features within editors such as Visual Studio Code, Cursor, Zed, and Helix. This makes it essential for anyone looking to use new agentic tools. Many companies are now utilizing LLM trends to boost developer performance, but a major challenge has has been that Metals becomes less efficient as codebases scale—a common issue in large organizations.
Metals 2 is a new indexing and compilation approach, designed to make indexing as fast as possible and ensure the codebase remains functional even if parts of the project fail to compile. Applying this to both Scala and Java code, Metals 2 aims to become the premier JVM language server. We are currently cooperating with multiple large monorepos testing and further enriching this approach.
Let’s explore how this can enhance developer workflow to show the Scala developers that tooling can finally be great.
Tomasz has worked with multiple programming language tools through the years trying to provide a productive environment for other developers to interact with. Currently, team lead of Scala Open Source team at VirtusLab.
