Re: [csswg-drafts] [css-values] Short-circuit if() evaluation (#11500)

> I would be curious to learn which anticipated edge cases led to the fallbacks being considered as a part of the cycle even when not used: were there actual circularity cases that could happen, and we did not know how to handle (and know what to do now)?

I wasn't involved then, but I _suspect_ it was done that way to make it possible to handle cycles without doing any evaluation? But things have gotten significantly more complicated (dynamic) since then. For example, `--x:var(--unknown, revert-layer)` may or may not be a cycle depending on what `revert-layer` reverts to.

> And if we change this behavior: what is the benefit of that change, which use cases does it unlock then?

More or less the same as `if()`: it allows `var(--commonly-present-but-not-always, --rare-and-expensive())` without _always_ evaluating `--rare-and-expensive()`.

-- 
GitHub Notification of comment by andruud
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11500#issuecomment-2663186452 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Monday, 17 February 2025 13:46:13 UTC