Honestly, though: I do wonder why some people like to fight it so much and keep asking about developing in all kinds of weird languages which were simply not made for the task. Why would you try to develop an OS in a language like C#? It really escapes me. C was designed to be, as has been stated before, "A portable assembly language", and is the only language (apart from its derivative, C++) which has been shown (by several real, industry standard kernels) to produce a working kernel on any architecture, or in fact on multiple architectures from the same kernel tree.
I can understand when a highly skilled systems programmer decides to do something for the heck of it, knowing already what he's doing, but what really makes the whole thing more obscure is that only people who are new to kernel concepts ever even suggest using any other language. Why does that pattern follow?
