How is the Language Server Protocol impacting the future of Scala tooling? Software Developer Ólafur Páll Geirsson shares his experiences from implementing Metals, a language server that supports cross-language code navigation, refactoring, linting and formatting.
Be inspired to be part of the efforts in building a bright future for Scala tooling!
Six steps from zero to IDE
The Scala IDE situation is quite possibly the worst out of all the industrial languages in existence. They’re all terrible, especially VS Code or Atom. Just use IntelliJ and hope for the best.”
r/scala, 10 points, 2 days ago
Why is it so hard to build a good IDE for Scala? Compared to JavaScript or Clojure, one would think that static types in Scala make it easier to provide a great editor experience. With the introduction of the Language Server Protocol, things may be changing for the better.
The Language Server Protocol aims to solve a long-standing issue: implement a “language server” once and automatically support a wide range of client editors. The protocol was published in 2016 and has since then gained significant traction with implementation for over 26 programming languages and most major editors. A search on the VS Code extension marketplace yields 5 (!) hits for Scala language servers. A working group has recently been elected by the community to consolidate efforts around Scala language servers.
r/scala, 10 points, 2 days ago
Why is it so hard to build a good IDE for Scala? Compared to JavaScript or Clojure, one would think that static types in Scala make it easier to provide a great editor experience. With the introduction of the Language Server Protocol, things may be changing for the better.
The Language Server Protocol aims to solve a long-standing issue: implement a “language server” once and automatically support a wide range of client editors. The protocol was published in 2016 and has since then gained significant traction with implementation for over 26 programming languages and most major editors. A search on the VS Code extension marketplace yields 5 (!) hits for Scala language servers. A working group has recently been elected by the community to consolidate efforts around Scala language servers.
What will you learn?
In this talk, we will build an IDE! You will learn about the Language Server Protocol, how it’s impacting the future of Scala tooling and help you explore the zoo of ongoing efforts to build Scala language servers. I will share my experiences from implementing Metals, a language server that supports cross-language code navigation, refactoring, linting and formatting. Hopefully, you will become inspired at the end to join the efforts in building a bright future for Scala tooling.
This talk was given by Ólafur Páll Geirsson at Scala Days Berlin.