Feedback on Structured Concurrency (JEP 525, 6th Preview)

Alan Bateman alan.bateman at oracle.com
Mon Oct 13 06:38:16 UTC 2025


On 13/10/2025 05:22, Jige Yu wrote:
> :
>
> And this is the direction I'd hope the Loom team can more seriously 
> entertain: put a strong constraint on the API's imperative power, run 
> a thought experiment to see if the functional variant could offer 
> sufficient flexibility under the constraint.
>
I can't tell from your mails if you have read the JEP or not. We've 
tried to make it clear in every JEP that the goal is not to create the 
definitive structured concurrency API. This is an on-ramp API intended 
to "promote a style of concurrent programming that can eliminate common 
risks from cancellation and shutdown".  Its sweet spot is in fan-out 
scenarios. Its deliberately imperative and kept as simple as possible.  
There will be other APIs. For example, we would like to bring channels 
based and other fan-in scenarios into the fold. We would like to 
eventually expose a lower level APIs for building other structured APIs 
outside of the JDK.

On mapConcurrent. We've been around and around the topic of bringing it 
into the "structured fold".  From your back and forth with Viktor on 
core-libs-dev then I think you understand the issues.  When JEP 485 was 
preparing to make the gatherers API permanent it had to be decided if 
mapConcurrent should be pulled out. The conclusion was that it was 
useful enough as is, and we will look at improving or replacing it in 
the future. So yes, we of course want this, it's just not in the first API.

-Alan


More information about the loom-dev mailing list