What's the vision behind the platform process?

Hello @deontologic, thanks for the question.

It’s a collection of libraries covering the most important needs of Scala developers (for instance, utilities like XML, JSON, IO, etc). ScalaJS, being a compiler and a complex piece of software, does not fall into this category but its inclusion is up to the community and the Scala Platform Committee.

The modules that will be included are to be decided by the Scala Platform committee, but those seem like good candidates. We’ll have our first meeting on Monday, 17th January 2017 and we will start reviewing proposals from the community.

We do not fight fragmentation, we welcome it. This is why we’re doing the Scala Core - Scala Platform split. I’m very much looking forward to see what other developers/organizations will create in the future.

The goal of the Scala Platform is not to compete against them. Different platforms will focus on different properties/features. The Scala Platform focuses on concrete use cases to make Scala easy to learn (for students and other developers) and easy to adopt in production systems by companies/organizations (more info). This helps us increase the number of Scala developers while creating a set of community-maintained libraries that are independent from big organizations/companies and yet have some maintenance and stability guarantees.

The Scala Platform is not a magical wand to rule out other alternatives. It’s a medium for the Scala community to experiment, design and ship production-ready software that works in a large majority of the cases. By letting the community give shape to the modules, we all agree on the most important features. The diversity that you mention is good: libraries focus on a concrete set of features and it might well be the case that some use cases are not supported in a Platform module but in a library. In my view, it’s important that these libraries continue to exist because supporting all the features of a concrete domain is tricky (and sometimes impossible). On the contrary, developers of libraries whose overlap is big have now the opportunity to gather and work together, while getting help and contributions from Scala developers.

Have a look at this comment. Those are just some ideas but let me know if you have better ones :slight_smile:.