News for hackers. Stuff that matters.
Re:Notes on structured concurrency, or: Go statement conside... by tialaramex on Tuesday July 05, 2022 @06:14AM (#31986402)
> If you do not have positive "arsenal addition" suggestions to solve the essence of the problem I mentioned [...]

To the extent that you're still looking for the drop-in replacement you're going to of course be disappointed, this is why that Python hack doesn't do what you thought it did. Composition is what makes the higher level constructs worth having despite the fact they aren't drop in replacements and don't deliver the raw power of the simpler idea.

I encourage you to think about such higher level, composable, structures. You can imagine them as a library calling your more powerful primitive if you like, but don't be surprised if that doesn't turn out to be the reality.

Re:Notes on structured concurrency, or: Go statement conside... by cb321 on Wednesday July 06, 2022 @05:17AM (#31998550)
> Python hack doesn't do what you thought it did

Your rate of misreading & over-attribution with the seeming intent to inflame is high. Trying to be enough of a troll to rollback a bit the perception Rust has a welcoming community?

If you/anyone is curious about a multi-prog.lang project starting from structure and later building arsenals in the senses here, there are worse places to start than the 25+ year history of https://en.wikipedia.org/wiki/OpenMP . There may be records to be found of board meetings/rationales discussing trade-offs & limitations.

Re:Notes on structured concurrency, or: Go statement conside... by tialaramex on Wednesday July 06, 2022 @10:22AM (#32001425)
Here's what you wrote:

> You can cobble together "unstructured" jumps on top of the structured exception system as in pygoto.

As I explained, all pygoto is actually doing is recursively invoking Python's interpreter. It's a clever hack, but you can't actually use this as go-to, which is why the trivial loop doesn't do what you'd expect.

> Trying to be enough of a troll to rollback a bit the perception Rust has a welcoming community?

I'm sure Rust's "welcoming community" can point you to more agreeable people if that's what you're looking for.

> the 25+ year history of https://en.wikipedia.org/wiki/OpenMP

I am an old man, and this sort of thing makes me feel older every day. Yes I am aware of OpenMP, but I learned this stuff with MPI since OpenMP didn't exist until I was a graduate.

Did you notice, in reading that 25+ year history (it would be about 30 years for MPI) a gradual trend? That things everybody was sure were just too abstract and high level to be useful in 1995 are today mainstream and of course modern versions of these APIs must offer them? Complexity is inevitable, and so ease of composition becomes more important and the structured concurrent primitives are easier to compose.

Just the other week, I was eating lunch with some people from the floor above, who look after our supercomputers and they were moaning about a high value user who has sloppily left some old spin-when-done code in the version they're actually running. He's likely bringing in enough revenue to justify the supercomputer on his own, but it'd be nice if his code would correctly detect "I'm done, exit" and let other jobs run without manual intervention. He hasn't done this on purpose because he's evil, he just did what was easiest in the 1990s tools he's using. Structured concurrency could have made it easier for his program to have the same performance and exit cleanly with no effort.

Re:Notes on structured concurrency, or: Go statement conside... by cb321 on Wednesday July 06, 2022 @07:27PM (#32008155)
You aren't merely "disagreeable" as you exhibit yet again. Feeding trolls is also against guidelines. So, good bye.