Sorry, I haven’t read these forums for a while, but your comment is great, very apropos. You raise a lot of great points. That whole “C/C++ => C#” thing is something that particularly irks me, and it has been raised before by others. I just don’t buy any reasons that I’ve seen. I’ve written a C# compiler for CIL targeting NVIDIA via LLVM (Campy) supporting like 90% of C#, and ported a mini NET runtime called DotNetAnywhere which contained a lot of C code to CUDA. Remarkably, it works. But, all those thousands of changes won’t work for AMD GPUs because it’s CUDA. And, it’s not the Net Core runtime. I really have to get the Net Core runtime rewritten in C#–with some being obviously unsafe–code, except for possibly a very, very small kernel. Some would say that C# can’t be used for HP computing, but I’m extremely slow to give up. I just don’t believe them, and I’ll prove them wrong. Anyways, I’ll be rewriting the NET runtime into C#. I’ll definitely consider replacing the GC with a deterministic algorithm. I had to rewrite the GC anyways for the GPU target to not use locking. Note, I haven’t worked on the project for a few months because I’ve been stuck on another project that Campy depends on. It re-invents pinvoke generators in a very nice, clean, template/pattern matching language on ASTs, something that some compiler writer should have done years ago. When that works, I’ll be back on Campy soon.