Here is a fact about diffusion models that stops being obvious once you think about it: every denoising step receives the same instruction.
You write one prompt. The model takes fifty steps. All fifty are conditioned on that one prompt, even though the steps are doing completely different jobs — early ones establishing composition and mass, late ones resolving texture and edge. It is like handing a single sentence to every stage of a factory line and expecting each station to work out which part applies to it.
Dancing Diffusion: Learning Continuous Programs for Image Generation and Editing (arXiv:2610.28003) takes that seriously. Posted 20 October 2026 by Cui Enhe, Jinyue Yang, Bojian Yin and Guoqi Li.
Conditioning as a program
The reframing: give each span of timesteps its own continuous condition block, which, in the paper’s phrase, “turns conditioning into a latent program.”
The denoising trajectory stops being one long instruction applied fifty times and becomes a sequence of addressable operations. A learned compiler maps text features into that program, and a fixed, pretrained generator — SANA — executes the blocks over successive sampling intervals. The generator is frozen; all the learning is in the compiler.
Two consequences follow, and they are the reason a creative coder should care.
A shared prefix runs once and is reused. If two variants differ only in a late operation, the early part of the trajectory is computed a single time. That is common subexpression elimination, arriving in image generation by way of calling the trajectory a program.
A later operation can be rewritten while content set by earlier operations is preserved. This is the editing story. Conventional editing either regenerates from noise — losing the scene — or wrestles with the prompt and hopes the model keeps the background. Here you keep the executed history and redirect the continuation from a chosen point.
The compiler is trained through the images it produces, using visual feedback on both the requested change and the retained content. Not on a dataset of correct programs — there is no such dataset — but on whether the program’s output did the thing and kept the rest.
The results, such as they are
The abstract reports three findings and not one number for any of them:
- reusing an executed prefix preserves much more of the scene than regenerating from noise at comparable edit strength
- learned conditions preserve more background than native prompt switching from the same saved state
- the learned program improves generation quality over native SANA
And one limitation, stated plainly: later branches weaken the edit, so semantic control over individual operations is limited. The further down the trajectory you intervene, the less an intervention can do — which makes sense, since by then the image is mostly decided and you are editing texture, but it bounds the usefulness of the whole scheme. The operations you can most safely rewrite are the ones that matter least.
Why the framing is the contribution
Strip out the architecture and what remains is a proposition about creative tools: a generative process is a program, and the useful interface to a program is not a single string.
Anyone who has worked in a node graph already believes this. The reason patching environments have survived every wave of easier tools is that they expose intermediate state — you can reach into the middle, change one thing, and watch the consequence propagate. The prompt box threw all of that away in exchange for being easy to type into, and the last four years of prompt engineering have been an attempt to recover, through natural language, the addressability that a graph gives you for free.
Per-interval condition blocks with a reusable prefix is a graph wearing diffusion’s clothes. The compiler is there because the input is still a sentence; the structure underneath is the thing that was missing.
What is not here
No code, no project page, no demo — the arXiv entry links only the PDF, the HTML version and the TeX source. No Comments field and no journal reference, so this is an unreviewed preprint with no venue. No quantitative results in the abstract at all, in a subfield where every claim is a comparison and the figures do the convincing.
It is cross-listed under cs.AI and cs.GR, licensed CC BY-NC-SA 4.0, and built on SANA — a sensible choice of frozen backbone, since SANA is efficient enough that running a program of condition blocks over it is not prohibitive.
Read it for the reframing. The number to wait for is the one measuring how much the edit weakens as you move the intervention later, because that curve decides whether this is a tool or a demonstration.
Sources
- Dancing Diffusion: Learning Continuous Programs for Image Generation and Editing — arXiv:2610.28003
- arXiv listing for cs.GR
- SANA — NVIDIA Labs