Metals Rich Code Editing for Scala in VS Code, Vim, Emacs, and Beyond
Offered By: Scala Days Conferences via YouTube
Course Description
Overview
Explore a comprehensive conference talk on Metals, a rich code editing tool for Scala in various text editors. Dive into the intricacies of Scala editor usage, global editor functionality, and two in-depth case studies focusing on diagnostics and completions. Learn about different approaches to diagnostics, the Build Server Protocol, and the challenges of slow feedback. Discover the nuances of completions, including presentation compiler usage, pattern matching, and performance optimization techniques. Gain insights into compiler plugins, blackbox macros, and the differences between blackbox and whitebox macros. Understand the importance of cancellation in editor performance and explore the wide range of features Metals offers. Compare its implementation across Visual Studio Code, Emacs, and Sublime Text, and get a glimpse of future developments in Scala code editing.
Syllabus
Intro
#1 Beginner question
Scala Editor Usage
Global Editor Usage
Editor gap
Two case studies
Case study 1: Diagnostics
Diagnostics: two approaches
Diagnostics from the build
Slow feedback
Build Server Protocol
Requires file save
Case study 2: Completions
Presentation compiler
Pattern matching
Override method
Name conflicts
Performance
Caching
Compiler plugins
Blackbox macros
Blackbox vs. Whitebox
Cancellation
A lot of features
Visual Studio Code
Emacs
Sublime Text
Future work
Taught by
Scala Days Conferences
Related Courses
Teaching Domain Specific Languages in ScalaScala Days Conferences via YouTube Why Dolly Is Just the Beginning for Open LLM Models
Scala Days Conferences via YouTube Building Billion Node Graphs for Machine Learning
Scala Days Conferences via YouTube How Does Incremental Compilation Work with Scala 3
Scala Days Conferences via YouTube AI Assisted Development
Scala Days Conferences via YouTube