What's New in Scala 3

Dotty is to become Scala 3

It's official - Dotty will become Scala 3: https://t.co/XQ1IyiZbmc

— Martin Odersky (@odersky) April 20, 2018

Motivation

Scala 3 new features address four major concerns:
  • Consistency - improve orthogonality and eliminate restrictions.
  • Safety - enable precise domain modeling and safe refactoring.
  • Ergonomics - support readable and concise code.
  • Performance - remove performance penalties for high-level code.

http://dotty.epfl.ch/docs/reference/overview.html

Timeline

Scala 2.13 is just around the corner.

Scala 2.14 is to be a stepping stone towards Scala 3.

scalafix to the rescue.

Resources

Dependent Object Types paper
http://lampwww.epfl.ch/~amin/dot/fool.pdf
Design discussions
https://contributors.scala-lang.org/c/language-design
Code, Tickets and Pull Requests
https://github.com/lampepfl/dotty/
Ten Cool Things You Can Do With Scala 3 by John Pretty https://vimeo.com/295103410
Not only Scala 3 overview but also a cool demo of the upcoming Fury build tool.