"[The GPU process] validates that the shaders submitted to the GPU use only the minimal features allowed by the spec. That means no dynamic indexing of sampler arrays. It means no infinite loops."
Not necessarily, WebGL could simply restrict the shaders language to not be turing-complete. No need for solving the halting problem if you start from a total language.
yep. because webgl is designed to work on platforms that may have to fully unroll loops in shaders (because of its mobile baseline), webgl shaders are not turing complete in and of themselves.
"[The GPU process] validates that the shaders submitted to the GPU use only the minimal features allowed by the spec. That means no dynamic indexing of sampler arrays. It means no infinite loops."
Halting problem solved. News at 11 :-)