Well, do you have any examples of it being done the way you want it done?
Conversation
Sure, Android's standard libraries along with the Kotlin language and standard libraries. It's an extremely broad and feature rich set of APIs. The platform has a versioned API level with yearly deprecations and removals. Evolves over time without legacy/abandoned apps breaking.
2
You're talking about two different projects, one of which is VERY platform dependent. I can (and do) use Kotlin for much more than Android.
Do you have any examples of a programming language's standard library that offers what you want, without a platform SDK?
1
Kotlin language and standard library take the same approach to gradually evolving without strict backwards compatibility. They avoid making sudden, drastic changes but rather slowly evolve it over time with easy to handle incremental backwards incompatible changes. Same approach.
2
Android's platform libraries and AndroidX Jetpack libraries (developer.android.com/jetpack/androi) certainly count as a form of standard library. The approach is dramatically different than the path taken by traditional platforms.
2
When you're writing an Android app, the Kotlin / Java standard libraries, AndroidX and platform libraries cover nearly everything you need so you hardly need any third party libraries. Java's approach hardly ever actually removes anything in practice so it's not really the same.
2
Still, Java has a rich standard library and they gradually replace the older libraries with newer ones. Jakarta is essentially an extended standard library from outside Java with a similar stability approach. It's one large collaborative project with a lot of bureaucracy.
2
There are a whole bunch of Jakarta libraries, from the same very collaborative and highly trusted project. It isn't part of Java's standard library, but it's a similar approach nonetheless. It's much different than a bunch of little projects developed by small independent groups.
2
Right, but that's not what you were arguing for. You were arguing for a large standard library, not a high quality group of non-standard libraries.
Heck, Rust has that! (sort of, it's getting better).
1
Jakarta has a quite strict standardization and release process, portability across different implementations of the language and a very high level of stability. It's not a first party implementation of a standard library, but I still think it qualifies as a standard library.
2
A library developed outside Jakarta can certainly be far more nimble and can much more quickly develop and evolve an elegant API. I'd probably still use the Jakarta library due to the long-term commitment to maintenance, security, stability, etc. I know it's not going anywhere.

