Mono 0.17 has been released. Check out the release notes for a more detailed list. Many new features as well as plenty of bug fixes. Many new System.Data providers and a more mature System.Web (ASP.NET) which can now be hosted in any web server. A simple test web server to host asp.net has been released as well. This version also integrates Neale’s s390 port.
Hi all.
I’ve been reading about mono, .NET, etc. since a long time ago.
I think this is going to be something big in the computer area, but the question is, when will we have MS office using the c#? Or any other similar big apps?
Will mono be able to run these apps?
Thanks in advance for any replies.
If office would be 100% .net rewritten and if mono would implement all functions that office use, yes.
however, none of these are likely to be true.
Bringing .Net and C# to linux piece by piece……great stuff
I have high hopes for mono – they seem to be doing a fantastic job…and now an ASP.Net ‘working’ (loose use of the word) example….incredible
The big apps may never be ready.
One of the design principals of .NET is easy integration with existing code. Inside .NET, you have P/Invoke (Platform Invoke) to call existing libraries, allowing new code to call “legacy” code.
.NET objects can also be exposed as COM objects (on Windows), allowing “legacy” code to call .NET code with few (if any) problems.
This allows for a slow migration from an existing code base to a new code base, if any migration is to occur at all. It’s equally possible that the “legacy” code will *never* disappear (for compatibility or performance reasons, etc.).
The end result is that for current “big” programs, a total migration may never occur. This is by design: re-writes are expensive, and occasionally of dubious merit. New code may be written in C#, but it’ll integrate with existing code, not replace all of it.
If there’s a business reason, Office may be re-written in C# . I don’t think there is a business reason for it, though.
Other apps may have a business reason. I can imagine IIS being a candidate for a re-write, given how many buffer overflows it has suffered from. Re-writing it in C# may be less expensive, long term, than trying to fix the existing code.
– Jon
If Microsoft were to just disappear off the face of the earth tomorrow, would this still be useful? In other words, what is the real usefullness of this in and of itself?
Doesn’t this somewhat help MS in its struggle for the web against Java? This would seem to be good for MS as well as us, and bad for Java in every way?
I’m don’t hate MS, I just don’t want them to gain full control of the Internet. I could see them breaking compatibility using .NET and leaving MONO useless, just like they did with DNS+ and all their previous attempts at control. Whether they will try and will it work, I don’t know, but it’s worth considering.
We don’t know whether Office would use .NET, but it is extremely probably. Albeit it would probably be Windows-only. But something for sure is that Office, for the near future, and most probably the distant future, wouldn’t be ported to C#. They may have C# components, but porting a huge app like Office to C# is stupid. In fact, stupid isn’t the right thing to say. It is really stupid.
This goes for other apps. However, we probably would see within 5+ years apps stop using Win32 and start using .NET. But I guess we wouldn’t know. It depends whether Microsoft present .NET as a Win32 replacement, not a complement. But then Avalon, the next version of Win32 (as major as the shift from Win16 to Win32) may replace Win32 instead of .NET.
I guess right now we wouldn’t know. Funny, a year ago everyone taught that .NET would replace Win32. And since Longhorn, not many are too sure about that anymore.
If Microsoft were to just disappear off the face of the earth tomorrow, would this still be useful? In other words, what is the real usefullness of this in and of itself?
Assuming that it has any kind of traction in the market, then yes it is a Good Thing.
At a minimum it butts heads directly against the Java camp, which means that it is competing for the same resources and applications.
That means that both platforms need to put more effort into expansion, which ideally makes both products better for their users.
If it doesn’t have any traction, then that would mean it would, essentially, Go Away, which means the Java camp slows down.
So, in summary, the Java camp should embrace Mono and .NET as it will only make the Java platform better.
Boy, I hope Microsoft is dumb enough to rewrite Office to DotNet, that way, the source is open to anybody.. read decompiler (even thought DotNet is never compiled..).
I can’t wait until Mono finalizes it’s support for DotNet, the 1.0 version should support vb.net as well as c# for ASP.net, if it doesn’t, then it does NOT fully support ASP.NET.
(even thought DotNet is never compiled..).
ngen.exe creates a native image.
Personally I still want .Net and C# on the Mac without using M$’ shared source compile it yourself reference implementation.
C# & vb.net for the Mac would rule, easy cross platform applications.
ngen.exe takes away JIT, which is needed for “fast code”.
I assume that Office is written in C++, depending on the situation, Microsoft may simply port it to managed C++, thus, not require a total rewrite of the code.
As for COM in Mono, IIRC, that is going to be handled by CORBA, which is more or less the same bloody thing, except OpenStandards, also, Mono’s grand poobaa, Monguel quite likes it too.
ngen.exe takes away JIT, which is needed for “fast code”.
From ms.com:
The Native Image Generator creates a native image from a
managed assembly and installs it into the native image cache on the local computer. Running Ngen.exe on an assembly allows the assembly to load and execute faster, because it restores code and data structures from the native image cache rather than generating them dynamically.
Exactly, thus if you distro the “native image” to other computers, it will NOT perform the same, since it is a “native” image to your computer only.
While we don’t know for sure, most of Office is written in C. I’m quite sure there are some parts using COBOL too. But it is a big app. .NET while allowing developers to port their existing apps easier to it than to Java, is still hard to port to. It is very different than Win32. Microsoft would probably make it mostly .NET with parts in Win32.
Part of the “featureset” of .NET is to allowing .NET apps to link to Win32 components.