Mon 5 Nov 2018 10:30 - 11:30 at Cambridge - Keynote: Burmako & Tooling Chair(s): Stefan Marr

Nowadays, there is a clear trend towards standards for communication between developer tools. Language Server Protocol (LSP), a protocol that connects programming language implementations and text editors, has gained strong industrial support and at the time of writing has implementations for many programming languages and editors. Build Server Protocol (BSP) follows in LSP’s tracks with an ambition to define a protocol for communication between language servers and build tools.

While lots of work in the open-source community has been invested in unifying user experience (by codifying commonly used operations like go to definition or find all references), relatively less work went into unifying implementor experience. For example, at the moment, there exist five different LSP implementations for Scala. They all implement the same protocol that works with code, but they all use different data structures to represent that code.

In this talk, we will present SemanticDB - a data model for semantic information such as symbols and types about programs in Scala and other languages. We will discuss our experience of building an ecosystem of developers tools around SemanticDB and using these tools on Twitter source code - arguably the largest Scala codebase on the planet.

Language tools lead at Twitter, member of the Scala language committee, founder of Rsc, Scalameta and Scala Macros

Mon 5 Nov

Displayed time zone: Guadalajara, Mexico City, Monterrey change

10:30 - 12:00
Keynote: Burmako & ToolingMETA at Cambridge
Chair(s): Stefan Marr University of Kent
10:30
60m
Talk
SemanticDB: a common data model for Scala developer tools ⭐️Keynote
META
I: Eugene Burmako Twitter, Inc.
DOI
11:30
30m
Demonstration
Relit: Typed Literal Macros for Reason
META
Cyrus Omar University of Chicago, Charles Chamberlain University of Chicago
Link to publication