Originally posted by BlackStar
View Post
Announcement
Collapse
No announcement yet.
Mono 2.8 Is Out With C# 4.0, Better Performance
Collapse
X
-
-
Still, with the number of people using Banshee and F-Spot and the like, it would suck really hard for them if those things got killed or went proprietary.
And screw the edit window. It's 5 seconds, not 1 minute. If Michael does not want people to post here, he should just say so.
Leave a comment:
-
Yeah, the connection of GNOME to Mono is unfortunate, but it's not fair to claim that GNOME is pushing Mono. There are many people in there who value software freedom, after all.
Leave a comment:
-
That's why DEPENDING on closed technology is a no-no for a system with so many powerful enemies. This is the reason why RMS raised hell over Qt back in the day, and why he has rallied against Java for so many years. It's an irony of fate that GNOME (which is a part of GNU) is pushing Mono now.
Currently the only application written with the Mono bindings is the notetaking application Tomboy which has been part of GNOME since version 2.16 released in 2006. Tomboy will of course continue to be available in GNOME 3.0, but no component introduced explicitly in GNOME 3.0 will depend on Mono - GNOME Shell is written in C and Javascript, Zeitgeist and the GNOME Activity Journal use Python. And by the way, you can safely remove Tomboy if you don't like it. Alternatively Gnote can be used which is a port of Tomboy to C++. Other Mono based applications like F-Spot and Banshee are not officially part of the GNOME release and have alternatives such as Shotwell, Rhythmbox and others.
Leave a comment:
-
Originally posted by BlackStar View PostThat's no different from the FAT patents. I acknowledge the danger but I am forced to ignore it - as are all software developers today. If worse comes to worst, we will adapt and survive, as we always have.
If half of your desktop depends on Mono, it will be quite a hit if you have to give up on all that software and/or rewrite it in C.
That's why DEPENDING on closed technology is a no-no for a system with so many powerful enemies. This is the reason why RMS raised hell over Qt back in the day, and why he has rallied against Java for so many years. It's an irony of fate that GNOME (which is a part of GNU) is pushing Mono now.
Leave a comment:
-
Originally posted by makomk View PostAh, I beg its pardon, I was confusing the patent I actually found with what I was looking for at the time. The actual patent is rather broader - it covers any use of delegates and events in .Net that complies with Microsoft's coding style (which requires them to take exactly two arguments: the event source and a package of parameters for the event). This still affects Gtk#, though.
Hopefully, though I'm pretty sure it's been scheduled to replace the old one imminently for years.
It's not why they're suing, but there's no reason they couldn't sue Mono too using the same patents. The only Java-specific patent is the security model one (which isn't actually used on Android and is only there for compatibility); the rest are generic VM patents. Dalvik is very much like the CLR in that it's a register-based VM, unlike the stack-based JVM. If they can stretch the patents widely enough to encompass Dalvik...
In other words, you either have to put in a huge amount of developer work to optimise stuff that shouldn't need optimising - or you can skip that, buy Windows and run your software on a decent .Net implementation for less overall cost. This isn't just hypothetical; I've seen an open source C# project (OpenSim) end up having to do this. sgen should hopefully reduce this issue in the future, but it's still not considered production ready.
Note that these optimizations are equally valid in C or C++ if you care about performance or memory fragmentation - only there you don't have a GC to fall back on, so everything else is much more painful to implement.
Originally posted by kraftmanLast time I said mono garbage collector sucks a lot you didn't agree and you said something like it's one of the best gc, but now they're replacing it. Funny. :>
Novell has now create a new GC that performs better for Mono, but only after tons of effort. This is no small feat and it doesn't mean that Boehm sucks.
Originally posted by pingufunkybeatYou will have to worry if your software starts costing money to run in the future. Like, if everyone distributing Mono needs to pay a patent license.
Leave a comment:
-
Originally posted by makomk View PostIn other words, you either have to put in a huge amount of developer work to optimise stuff that shouldn't need optimising - or you can skip that, buy Windows and run your software on a decent .Net implementation for less overall cost. This isn't just hypothetical; I've seen an open source C# project (OpenSim) end up having to do this.
Originally posted by BlackStar*You* don't have to worry. Novell does.
See, Microsoft is in the business of writing and selling software. If they find out to sell you Mono, they will.
Leave a comment:
-
Originally posted by BlackStar View PostI've been testing the new GC and its performance is pretty good. It will replace the old one in a few months.
Leave a comment:
-
Originally posted by BlackStar View PostLinky, please.
Originally posted by BlackStar View PostI've been testing the new GC and its performance is pretty good. It will replace the old one in a few months.
Originally posted by BlackStar View PostNope, sorry. Oracle is not suing Google because Dalvik has anything in common with .Net. They are suing because Java is much less open than they would like you to believe.
Originally posted by BlackStar View PostYou can certainly construct corner cases where Python performs better than Mono, but Mono tends to perform significantly better in the well-optimized case (value types and/or memory pooling to avoid runtime allocations). Using sgen, you can also get away with some pretty crazy stuff, like hundreds of gen-0 allocations.
Leave a comment:
-
Originally posted by makomk View PostActually, it turns out that Gtk# infringes on at least one Microsoft patent that's cleverly designed to entrap any GUI framework based on .Net that didn't carefully avoid it.
Oh, and Mono's garbage collector? It sucks. It's far worse than Java's, even if you go back and use Java versions from the mid-90s. The new "--gc=sgen" option should bring it closer to the JVM in performance, but it's still experimental.
Funny you should say that. It turns out that the Dalvik VM that Oracle are suing Google over has far more in common with .Net and Mono than it does with the JVM.
It is impossible to create a valid, open-source Java implementation. Look up the bitter history behind Apache, Sun and project Harmony, if you don't believe me. Sun (and now Oracle) just barely tolerates OpenJDK and makes it almost completely impossible to re-implement the spec independently.
Check this blog for an in-depth analysis of the situation: http://www.jroller.com/scolebourne/
So if you use Mono, not only do you have to worry about Microsoft's patents on .Net, you have to worry about Oracle's patents on Java too! (Whereas if you use the JVM, neither of these is an issue - there's a patent license for Oracle's patents and Java predates Microsoft's patents.)
Those patents are likely to apply equally well to any modern VM. The only reasonable course of action is to ignore them completely.
Depends on how exactly your app is affected by the garbage collection penalty, I think. For software that needs to avoid the latency created by periodic GC, creates a lot of short-lived objects, or worse still does both, Mono could actually be worse than Python.
But memory latency is only part of the picture and stuff like threading do favor Mono a lot.
Leave a comment:
Leave a comment: