Metals
Presentation Compiler
Interactive Compiler
Compiler
Compiler
Metals
Presentation Compiler
Interactive Compiler
Compiler
lampepfl/dotty
Compiler
scalameta/metals
Presentation Compiler Tradeoffs
| Benefits | Drawbacks |
|---|---|
| 1 - 1 relation with the compiler | strictly bound to the version |
| bugs can be fixed for older Scala Version | released from another repository |
| API can change | |
| it can be broken by the compiler team | |
| latest syntax and features may require additional changes thus may be not released immediately |
Stable Presentation Compiler
Metals
Presentation Compiler
Interactive Compiler
Compiler
Compiler
lampepfl/dotty
scalameta/metals
Metals
Presentation Compiler
Interactive Compiler
Compiler
Compiler
lampepfl/dotty
scalameta/metals
Stable Presentation Compiler
2017
Scala 3 Presentation Compiler with Dotty Language Server
2020
Scala 3 support in Metals
First Presentation Compiler
2009
2012
First Scala 3 commit
Stable Presentation Compiler
2017
Scala 3 Presentation Compiler with Dotty Language Server
2020
Scala 3 support in Metals
2023
Scala 3 Presentation Compiler provided by Dotty
First Presentation Compiler
2009
2012
First Scala 3 commit
What's the difference ?
| Benefits | Drawbacks |
|---|---|
| Presentation Compiler is released along Scala Compiler | bugfixing / adding new features to already released version is more expensive |
| 1 - 1 relation with the compiler | workflow is slower as everything happens in the compiler |
| compiler team won't break it by accident | |
| API is stabilized and tested with MiMa |
Copy of deck
By rochala
Copy of deck
- 157