Skip to content

✍️ Reframe strict structured concurrency around lifetime correctness#1138

Open
cowboyd wants to merge 2 commits intov4from
strict-structured-concurrency-blog
Open

✍️ Reframe strict structured concurrency around lifetime correctness#1138
cowboyd wants to merge 2 commits intov4from
strict-structured-concurrency-blog

Conversation

@cowboyd
Copy link
Member

@cowboyd cowboyd commented Mar 12, 2026

Motivation

The strict structured concurrency post already introduced foreground and background work, but it still read primarily as a convenience refinement. This update makes the stronger claim explicit: when incidental background work can keep a scope alive after the meaningful computation is complete, the lifetime model is semantically wrong and every framework built on top of it inherits an incorrectness tax.

Approach

Rewrite the article to lead with the correctness argument, introduce foreground vs background earlier, and recast the spinner/timeout example as a semantic and operational failure mode rather than cleanup boilerplate. Preserve the existing points about aggressive teardown, classic structured concurrency, and orderly cleanup while tightening the argument around lifetime correctness, hung scopes, and the operational cost of letting support work outlive the computation it was supposed to support.

Preview

https://effection--strict-structured-concurre.deno.dev/blog/2026-03-12-strict-structured-concurrency/

@pkg-pr-new
Copy link

pkg-pr-new bot commented Mar 12, 2026

Open in StackBlitz

npm i https://pkg.pr.new/effection@1138

commit: 2d97874

@cowboyd cowboyd force-pushed the strict-structured-concurrency-blog branch from 206d386 to 05bd9ef Compare March 16, 2026 21:46
@taras taras changed the title ✨ Add strict structured concurrency blog post ✍️ Reframe strict structured concurrency around lifetime correctness Mar 16, 2026
@taras taras force-pushed the strict-structured-concurrency-blog branch from d139195 to 05bd9ef Compare March 16, 2026 23:58
Replace the static foreground/background split diagram with an animated
timeline showing bars growing over time, the scope boundary appearing
when foreground completes, and background overshoot being reclaimed.
Uses FOREGROUND/BACKGROUND section headings, single-line title at 52px.

Supports CSS animations with prefers-reduced-motion fallback to static
end-state. Light/dark mode via prefers-color-scheme media query.

Session-ID: ses_306f2b523ffeWNTN1w2kiCQ3Lj
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants