> Makes things more complicated and is often used for very questionable reasons.
Why is it complicated? Because you didn't bother to learn new API and it is sufficiently different from older one?
Why is it complicated? Because you didn't bother to learn new API and it is sufficiently different from older one?
No you’re not. There is a similar situation in Kotlin, which supports coroutines. Makes things more complicated and is often used for very questionable reasons.
This is why I’m excited about project Loom, which will use the same old thread abstraction but can be configured to use fibers under the hood instead. Java devs don’t even care that its not traditional threading, its the same API! This simultaneously solves the „coloredness“ problem of functions.