I poked around a bit on their docs site [1] to get a feel for the language, and these two features stood out to me:<p>> - <i>Interfaces and generics</i> provide first-class alternative to hacky preprocessor-based or string-pasting shader specialization. Preprocessor hacks can be replaced with a well-understood language feature already used in Rust, Swift, C#, Java, and more.<p>> - Automatic differentiation greatly simplifies the implementation of learning-based techniques in shaders. Slang supports automatically generating both forward derivative and backward derivative propagation functions from forward computation code.<p>> - Slang supports a first class module system, which enables true separate compilation and semantic checking of shader code.<p>I am a total beginner at shaders, but when I've dabbled in them they are mostly surrounded by string concatenation and a variety of wild macros, so it's cool to see a "typescript for shaders" with such broad support, both of vendors, and of target shader languages.<p>[1]: <a href="https://shader-slang.com/slang/user-guide/introduction.html" rel="nofollow">https://shader-slang.com/slang/user-guide/introduction.html</a>