Halide is able to generate performant code because the scheduler can make decisions based on global metrics in the program; in addition, DSL is easier and faster to write for programmers so they can iterate quickly to generate good performance code using domain specific primitives.
I would think GLSL and HLSL are DSLs for graphics programming, although they don't have the sophisticated scheduling and optimizations that Halide has for optimizing performance and productivity of the program.
Halide is able to generate performant code because the scheduler can make decisions based on global metrics in the program; in addition, DSL is easier and faster to write for programmers so they can iterate quickly to generate good performance code using domain specific primitives.
I would think GLSL and HLSL are DSLs for graphics programming, although they don't have the sophisticated scheduling and optimizations that Halide has for optimizing performance and productivity of the program.