Imagine using Cosmos (see gocosmos.org) to enable building ReactOS in a higher level language (C#) which is then converted into assembly etc. I sure it's impossible but don't have the knowledge to even discuss it, but how wild would it be to be able to write a whole OS in that way (or maybe just the non-kernel parts, etc)
But won't this cause possible licensing conflicts? I mean, doesn't MS own it and could, if they want, pull the rights or require substantial royalties at any point in time? Better to use an older language which nobody officially owns.
I meant that an idea can be rejected without the initial suggester having to feel at fault for making it, or else he might just as well refrain from any suggestions in any topics at all. - Edit: You, Emuandco, apparently at least looked into it. - To reject it, of course, is fair enough.
So far we haven't been presented with any actual arguments that would suggest this is a good idea for ReactOS. The original poster simply threw the idea out because he/she thought it seemed like an interesting idea. An interesting idea does not equate a good idea and it is ultimately up to the people who do think this is somehow a good idea to present their case. Off the top of my head I can think of multiple reasons why it's a really bad idea for ReactOS.
1) Cosmos is cheating. Last I heard, they were converting their C# code into C which then gets compiled into machine code. They weren't using a genuine AOT compiler for C#, and the only open source one I'm aware of is being worked on by the MOSA project, which is not completed.
2) One of C#'s key advantages is it's basically a gateway to access the .NET framework. When writing an OS, you can't use those features since they don't exist at such a low level. And much of C#'s syntax that helps with eliminating boilerplate code also depend on existing high level abstractions already being implemented. Again, those don't exist at the OS level.
3) Compatibility would be an absolute pain in the ass to achieve with native Windows drivers and programs. I'd hate to see what we would need to do to present a C ABI to them.
So, if I understand correctly, your arguments basically are, to put it in a simplified manner, "Any of C#'s advantages are at a higher level, and to place them into a lower level means to negate them and just create a mess; therefore, keep it simple."
Well, not being a developer, my opinion here is irrelevant, but let me say that sounds quite plausible. Like someone saying "Let's make a house out of bubble gum" and then saying "... eh, but we will have to convert the whole bubblegum thing into concrete at some point..." - and you, if I get this right, are just saying, "we will just CONTINUE building it from concrete, like the initial plan was."
- Apart from this, i see no reason to rewrite something working into some other language just for the heck of it (besides C being more universal), but that it just my thought...
It's illogical. If you say, that there is no reason, why ReactOS should be interested in this, why have you suggested it in the first place? Oh. I think it was about calling us ignorants...