Refactoring via the Language Server Protocol


Refactoring is the process of improving code without changing what it does, and is typically supported in tools such as Wrangler for Erlang. The Language Server Protocol (LSP) allows tools like this to be integrated in a variety of editors, including VS Code, emacs and vim, and the Erlang Language Server (ELS) provides an integration of Erlang into LSP.

After a short introduction to refactoring, Wrangler and Erlang LS, we explain how facilities in Wrangler, including refactorings, input and form-based choices, are incorporated into ELS and LSP, and demo these for a variety of Wrangler refactorings.


The talk will introduce refactoring and Wrangler to a new audience of coders who might use ELS as part of their daily practice. It will also show how the Wrangler Language Server can be used, and point out how to overcome its imperfections, and how it might be enhanced.


Any Erlang user