CS2X
CS2X is an experimental transpiler that converts a C subset into multiple non .NET languages, powered by Microsoft's Roslyn compiler platform. It targets shader and graphics programming languages rather than CPU languages, making it suitable for GPU development workflows. Supported targets include HLSL for DirectX 9.0c and later, the older DirectX 8.0 to 9.0c assembly language, GLSL for OpenGL 2.0 and GLES 2 and above, ARB assembly, the Cg programming language used on platforms like PS Vita and Nvidia hardware, PSSL for PlayStation 4, Metal Shading Language for macOS and iOS, and Adobe Graphics Assembly Language. The project also supports custom output targets. CS2X uses a modified type system tailored for writing GPU programs and comprises several libraries: CS2X.Core for the transpilation engine, CS2X.CLI as a command-line interface, CS2X.Analyzer for analyzing C syntax and restricting unsupported features, and CS2X.CoreLib as a portable core library subset. The project requires .NET 8 and can be built usin