Future of Explicit Null

It is possible this question belongs in the Contributors board, but I expect that it will be seen here and I didn’t want to clutter that space.

The Explicit Null feature in Scala 3 is currently enabled by compiler flags. I can’t find any discussion in the documentation or these boards about whether that is expected to be the situation long-term or if explicit nulls will become the default in something like Scala 3.1. I feel like I read that the current plan is to make it the default in the future, but I want to verify. I ask because I am trying to decide if the next edition of my textbooks and videos should assume explicit nulls or not. I don’t want all of my code to immediately become out of date with Scala 3.1.


I have the same problem with my course material and I’m struggling with the same exact question, so thanks for starting this thread! I have tried to read up on this in the different forums, but couldn’t find a good summary of the current general roadmap of deprecation.

It would be really good if there was a 3.1-doc page with what old/new stuff is to be the norm/preference/deprecated/removed by then. My next course instance starts after summer, but my work on course material development needs to take place this spring…

1 Like

Previously there was a compiler setting that explicitly set the compiler only to accept 3.1 stuff, but this has apparently changed to “future”:

All current compiler settings are available here (code is king :slight_smile: ):

1 Like