@mcc In particular, Vulkan just recently introduced Shader Objects which allow users to avoid the "have to build up entire pipelines at once" issue, more efficiently bind engines to GPU activity, mix and match shaders, and avoid some of the more expensive shader (re)compilation issues. WebGPU seems to be pretty firmly designed around the original Vulkan configure-the-whole-pipeline-at-once approach.