great… ▸ …but can be also made easier to use? ▸ You may also know Project Palladium as Scalameta (at the time, scala.meta, for assonance with scala.reflect)
at ScalaDays by Eugene Burmako (“Rethinking Scala Macros”) ▸ Intended as a principled foundation for meta programming, intended for use in a new macro system
knows a lot about your code ▸ Scalameta injects itself into the compiler, and it persists information about your code ▸ The information can then be re-used later on by external tools ▸ The data structure holding the information is known as Semanticdb ▸ See the very comprehensive spec https://scalameta.org/docs/semanticdb/ specification.html
Scalafmt can fmt your code ▸ Scalafix can fix it ▸ Born in response to the goal of “to define a migration path from Scala 2.x to Dotty”, which came up in the first Scala Center Advisory Board meeting ▸ Authored by Ólafur, who’s at the time was a software engineer at the Scala Center
given a presentation about Scalafix ▸ Scalafix can now migrate your code, but also warn about unwanted patterns ▸ It would be neat to have that in your editor! ▸ But how?
effort made by Microsoft, in partnership with RedHat and Codenvy ▸ Created in the context of Visual Studio Code and open sourced on June 27, 2016 ▸ Extensible and “negotiable” ▸ You can implement only part of it, client and server negotiate the supported features ▸ You can extend it with custom features
the Scala incremental compiler ▸ Other build tools can integrate with it ▸ Developed at the Scala Center by Jorge Vicente Cantero (in photo) and Martin Duhem
TEAM, WITH SCALA CENTER AND WITH VIRTUSLABS TO INTEGRATE METALS WITH TASTY AND THE DOTTY PRESENTATION COMPILER Martin Odersky - September 13, 2019 CASTING METALS