Unix was originally all about not being... Multics. If Mono is to follow a similar nomenclature (just for the kicks), we have to talk about Mono's upcoming 'monopolization' and 'monarchy' in the next generation of the Unix programming land. Your see, if everything goes well, in 2 to 3 years most new Gnome user/desktop applications will be written --hopefully-- in Mono and C#. Update: Miguel deIcaza replies.
Permalink for comment
To read all comments associated with this story, please click here.
> There is absolutely no advantage in writing GNOME apps
> in C# except for C# being the simpler, better language
> compared to C.
>
Thats a big advantage, don't you think. In managed languages like Java and C# you get bounds checking, type checking, null pointer checking etc. for "free", since the JIT compiler is able to optimize them away in most cases. That means no more buffer overruns and other security exploits that use the weaknesses of C. You also get a type system that still exists at runtime, unlike the one in C++ which only exists at compile time (reflection capabilities of C++ are basically nonexistent. rtti is a joke)
About java vs. C#: Java is very slow for stuff like vector graphics and complex numbers since it does not support value types. That is why swing and java2d is so slow. If you do something graphics-intensive your only choices are .NET or an old compiler language like C,C++,Pascal etc. Java won't do.
> There is absolutely no advantage in writing GNOME apps
> in C# except for C# being the simpler, better language
> compared to C.
>
Thats a big advantage, don't you think. In managed languages like Java and C# you get bounds checking, type checking, null pointer checking etc. for "free", since the JIT compiler is able to optimize them away in most cases. That means no more buffer overruns and other security exploits that use the weaknesses of C. You also get a type system that still exists at runtime, unlike the one in C++ which only exists at compile time (reflection capabilities of C++ are basically nonexistent. rtti is a joke)
About java vs. C#: Java is very slow for stuff like vector graphics and complex numbers since it does not support value types. That is why swing and java2d is so slow. If you do something graphics-intensive your only choices are .NET or an old compiler language like C,C++,Pascal etc. Java won't do.