quote:Original post by SigmaGL
What?! C# is like Java, so it runs on a virtual machine. So, for Windows calls, it may be (perhaps) faster. But not for everything else.
Why do people continue to post on topics they have NO KNOWLEDGE ABOUT!
C# DOES NOT run on a virtual machine. It is compiled at runtime and executes normally, maybe you need to read up some? Please note that on Windows Longhorn and all future Microsoft operating systems, managed code and .NET are "native" to the platform, and your native code that you claim to be so fast right now will be sitting on top of that being slowed down due to .NET and security regs.
quote:
You can''t write a driver, memory manager, etc in C# because the language is not made to run exacly on the computer, but on a virtual machine on top of that. That is the reason for the garbage collector, etc.
Wrong again. Sure you won''t run drivers and memory managers in C#, that is what C++ is made for... lower level code that can be used in most situations on any platform. Also please note again that C# does not run on a virtual machine, wherever you got this information from is wrong. Also the reason for the garbage collector is for security reasons, you should notice that over 90% of security problems today are from memory leaks and bad memory programming.
quote:
Of course that, for windows stuff, C# is more productive because it encapsulates lot''s of stuff. But that comes with a price. There are some things (more obscure ones) that aren''t available to C# even in programming to windows.
encapsulates lot''s of stuff? umm maybe you should tell us what because that makes no sense at all.
Also what is this price you are speaking of? The only one I know of is a 3-5% performance loss in SOME cases.
Also what are these "obscure things that aren''t available to C# even in programming windows"? I would REALLY LOVE TO KNOW considering C# is the forefront language for programming on the Longhorn OS and I believe 80% of the common is even written in C#.
quote:
And if speed is important, then you have to write it in asm. But of course that, in a huge game like know, only 0.5% of it (the important functions) is written in asm. But in C# it would be the asm of the virtual machine, that then would run on the machine itself...
You really have no idea what you are talking about do you? You can use NATIVE ASM, NATIVE C++, OR IL ASM with C#. You can also use your own memory management and pointers with C#, you just have to denote that you are in unsafe mode.
Now I don''t mean to make you look stupid.. but you really have no idea what you are talking about when mentioning C#. You haven''t talked about ANY of the languages features, pros, or cons. All you have said are a bunch of made up ideas that I have no idea what you are talking about.
Also FYI the .NET framework is a beta test on 2000/XP and you should note that. It is the CORE SYSTEM that Windows Longhorn and future OS''s use, native code is now the one that has to pass through security channels, etc on top of the OS. The only thing native code will be good for on Longhorn are memory managers, drivers, etc like you said. Otherwise boxes pop up for the user telling them "THIS APPLICATION IS DEEMED UNSAFE CLICK HERE TO SHUT THE APPLICATION DOWN OR CLICK HERE TO ACCEPT".. and right there over 80% of users are going to shut it down =]