News for hackers. Stuff that matters.
Re:Java JEP 461: Stream Gatherers by samus on Friday November 03, 2023 @11:00AM (#38129819)
If it doesn't ship with the default distribution of the language, then there's the risk that multiple mutually incompatible libraries emerge or that the adoption by the ecosystem is spotty. Best example: the async runtime mess in the Rust ecosystem.
Re:Java JEP 461: Stream Gatherers by neonsunset on Friday November 03, 2023 @12:04PM (#38130734)
There is no async runtime mess. Tokio is the preferred one, and given Rust's goals it is difficult to do it better (pluggable async executors and the degree of flexibility such abstraction offers - running both on big servers and bare cooperative multi-tasking on microcontrollers).

In addition, multiple versions of transitive dependencies can coexist in Rust without conflicting with each other, there is no such risk.

Re:Java JEP 461: Stream Gatherers by samus on Friday November 03, 2023 @12:34PM (#38131137)
Quite so. But I am under the impression that not every library supports Tokio as a runtime. And while it might be possible to run multiple runtimes in the same process, or use compatibility wrappers, it sounds like trouble.
Re:Java JEP 461: Stream Gatherers by pjmlp on Friday November 03, 2023 @12:26PM (#38131030)
It is definitely a mess, given incompatible semantics making it an herculean effort to write runtime agnostic async libraries.