Mono Progress In the Past Year
Eugenia writes "OSNews posted an article accounting the applications created in GTK# the past 8 months, since the release of Mono 1.0. While many of them are still in their infancy, it's clear that the platform had a healthy progress, with 'super-hits' like Tomboy, F-spot, MonoDevelop, Muine & Blam! and other, less known gems, like SportsTracker, PolarViewer, MooTag, GFax, GIB, Sonance and Bluefunk. The 2.0 version of Mono is expected around May, but the developers advised distros and users to upgrade to Mono 1.1.4 despite being a beta."
Mono is a wonderful piece of reverse engineering, many of these apps I didn't even realize were Mono apps and I have been using them for a while now. In addition I found a couple that I am going to start using such as portage-sharp.
Keep up the good work Mono team, I love C#, and I love how you are brining it to *nix.
I fear the day when Microsoft will come and snatch this out from under the Mono team, but I really think this benifits Microsoft just as having an open source version of Java benifits Sun.
You know, something like:
1) Install/Emerge these tools
2) Install this nice IDE with API completion and stuff
It'd be nice if there was an Eclipse plugin for C# and Mono hehehe
Miguel de Icaza interview about mono on lug radio. Really nice one.
Tomboy, F-spot, Muine & Blam! ... MooTag, GFax, GIB, Sonance and Bluefunk
WTF? Who comes up with names like these? I would blame the MBA's, but this is open source stuff, right?
Sure, everyone knows Tomboy, F-spot, Beagle, MonoDevelop, Muine, Blam! or Monodoc
Uh, right, I knew that. Sure I did. Yup. They're superhits, so I'd be a fool not to. Got that right.
I've heard a lot about Mono not working as it's supposed to do. (buggy, missing features) but i havent tested it myself.. So my question is, does it realy work? Also check out Bits of News
Bits of News Giving you the latest bits.
Damn, there goes another application concept I had, to manage my ever increasing collection of books.
Does it handle stuff like "This book has been lent to Bob"?
Why do you say this Mono has done a good job at implimenting the CLR from the ECMA specifications?
I had mono once...damn, it sucked. I'm glad to see there's been progress in fighting this disea...erm, whoops. Terribly sorry. I was thinking of something different.
http://xkcd.com/386/
Interestingly, the summary neglected to mention Beagle, the one Mono application I actually plan on using and that has created some momentum for getting the Mono into various distros.
If Mono proves to be snappier than, say, Java, there might be some hope for it but the spectre of living under the mercy of MSFT is not easy to dodge. It's still there, however much people tried to not talk or think about it.
Save your wrists today - switch to Dvorak
I haven't heard of even one of these "super hits." I think that should have been punctuated,
with 'super-hits' like Tomboy, F-spot, MonoDevelop, Muine & Blam! and other less-known gems,
[
By providing an excellent platform for application development? How dare they!
I'm just getting into C#, and I love it. One interesting thing I found was that if I ran a socket server app on Windows, I couldn't connect more than 64 clients in a single thread. I tried the same binary on Linux/Mono, and it bombed out at 1011 connections.
Keep up the good work - I'm loving it!
You know what "MFC, COM & DNA roxzzz !" :))
;-)
.net platform, or by opening ALL the specification of .net and not only a small subset) for building a platform that could endanger their "milking cow" suppremacy : ie, windows OS !
.net will only be Microsoft Windows only and MS will make sure it will be so.
.net/java war those days is : when will sun relase the J2SE (java core) under some OSI approved license? so that it can boost implementation of GNU classpath project ;-)
;-)
:))
Come on, watch on sourceforge, almost no mono projects !!!!
As a comparaison, look at opensource Java projects or look at PHP projects, or Python based projects there are thousands and thousands. This is fact.
So realy, mono by lack of support from MS has few chance to survive. That may be a pitty but it has no future because MS supporting mono is like shooting in their own foot as mono is mainly for non MS oses
Who on earth think MS will realy want to push & help (I mean realy help, like opensourcing the whole
This is billion $ story guys, and this is pure corporate strategy. As a conclusion of that,
The only good question about
Be sure that this will also happen, has Sun has no other solution, has Java is now a too much big "pet" for them to handle it without major involvement of the community. The only alternative for them is to sink with their baby
By other "cheif comanders" like IBM and Oracle will not let them commit in suicide, be sure
I'm really looking forward to Dashboard (not mentioned in the article), the desktop app that uses Beagle to gives relevant information that it's collected on your computer about your current activity. It sounds really cool, and Open Source hackers came up with this before Microsoft did.
"Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
Every morning I get up and feed F-Spot (my Beagle). Then, I get out some eggs, cheese, and MooTag to make myself an omelet. I learned how to cook omelets from Emeril. So, it's Muine & Blam! and my omelets done!
Next, I take a shower and wash off the Bluefunk. Once dressed in my suit and my PolarViewer glasses I call down to Tomboy (our doorman) and have him GIB up a cab.
Once at work it is non-stop Gfaxes and sneaking some time with my SportTracker.
DAMN YOU OCTODOG! DAMN YOU TO HELL!
I'm writing this as a mere user, not as a developer, but from my point of view mono really is impressive. Just looking over the list of apps on osnews shows that mono really seems to give developers a framework that let's them develop great application in a relatively short time and in the end it's users like me who profit from that. ;-D
Great works, mono devs.
And to all those trolls that will come out of the woodwork with every mono story, telling us that mono is the end of open source:
Please, for once in your miserable lifes try to provide arguments for your point that go beyond MS is evil (though I would readily agree with that) and therefor mono is the suX0r.
"I thought I had mono once for a whole year, but it just turns out I was really bored". -- Wayne Campbell
"When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
This should stop people using C for things like evolution. Sure C is a great lenguage, but you need to dominate it. Some people knows to use it, most of use humans don't (let's remember the simultaneous 11 buffer overflow vulnerabilities discovered in gaim the past year, making it probably the most insecure IM client ever). And let's no talk about OO, which can help a lot for those final-user apps. C is not a OO language. Yes you can try to use it as OO language like gnome/gtk/glib guys do but they're just trying. A language is either OO or not, C is not. C is a 70's language, stop making gnome "the 70's desktop" with no functional kparts equivalent (bonobo sucks) and use mono, dammit.
He probably is one of the majority of Open Source followers thinking Mono will be sued by MS some time in the future and all the effort put into it will be wasted.
Linux is not Windows
Personally, I don't trust reverse engenering thing and I don't expect anybody at a corporate level can trust that.
.net platform and it could have any impact on mono users.
.net ? no, because .net seem to be fitting the gap let by ASP for all the small/medium project (depending on the "market").
.net collegues.
People need standard, people need complience tests.
mono does not offer both because appart from a very core piece of the platform the rest is locked at Redmont side and MS will make sure it is kept so !
As a consequence, MS can do whaever change they want in the
Who will bet his money on moving sands ?
So, unless MS comit strongly by submiting the WHOLE platform to ECMA or pushing their implementation to some OOS with an OSI approved license, Mono will struggle for survive next to his "big brother".
In those conditions, this means, that mono will never be a complete, stable, relable solution.
How much enterprise project do you have ever see running "mono" ? Personally none.
Is it the problem of
Anyway, comparing that with J2EE, I see daily J2EE OSS based projects implemented and that are proving linux+JBOSS or linux+Tomcat is a cost effective enterprise solution.
So, Mono is still FUD for me and for all my
This has to be a first.
Slashdot: News for Nerds, Stuff that matters only to them
Mono is a wonderful piece of reverse engineering
There is no "reverse engineering" involved. These applications are written in C#, an open ECMA standard, and the open source Gtk+ toolkit.
I fear the day when Microsoft will come and snatch this out from under the Mono team,
There is nothing to "snatch": these are applications implemented in a non-Microsoft toolkit using an open language standard.
I really think this benifits Microsoft
I don't see how writing Gnome applications in C# benefits Microsoft any more than writing Gnome applications in C++ or Python.
If developers advise people to use the beta, doesn't that defeat the purpose of calling it a beta?
Ok, Microsoft Is evil, this I will give you, but C# rocks. After years in C and C++, I moved to Java, and It was good, then about 2 years ago I moved to C# and it was better. Now I program in both, for work and graduate school. I have to say they are very similar, but when I am doing a program in Java, I always miss a few of the C# features (virtual keyword for functions, Get/Set are better in C#, etc)
/.ers . If we can start making programs for the general population that run on *nix systems, but look just like they do on windows, more people will use *nix. What we have to realize is that most people in the world(not on this website J) don't have 4 computers in their basement running different operations systems, they just have the one running windows.
The only problem I have with C# was that it was not as portable as Java, but Mono came to my rescue. I was surprised how many of my program just worked in Mono (after removing winforms that is). I can't wait for version 2.0.
Really, Mono should be embraced
P.S. And for some reason, they still have the sides on their computer case.......
WTF has selectes "mono" name ;-)
:D
Coz it sounds like "monomaniacs"
Hmm. What the article is really about is gtk#, not mono per se. How well does gtk# work in Microsoft's dotNet implementation? Or even does it work at all?
Now that Windows forms is available, I could of course create cross platform applications in that, but I suspect I'd get more consistent results from using gtk#, if targetting both Unix and Microsoft dotNet is a requirement.
In any case, gtk# looks nicer as a programming model.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
I just happen to be one of the few official developers for the mono project, just catching this artical early. Mono is quickly becoming better then ever. The biggest difference between Mono 1.0.x and Mono 1.1.x is the fact that our Just-In-Time compiler (or JIT) is getting more and more amazing every day. The 1.0.x series use a interprator capable of understanding things at the application start. One huge correction is that Mono will be called 1.2 in May not 2.0. While it is true that gtk-sharp-2.0 is moving to 2.0 from 1.0, the Mono runtime will remain at 1.2 as not to be confused with Microsoft.NET 2.0 (all though support for many of .NET 2.0 features will be included). Gtk# being based on Gtk+ 2.2 and Gtk# 2.0 being based on Gtk+ 2.4. Windows support is just as compatable with GTK# as it is on Linux, minus support for Gnome, VFS, GConf, GtkHtml 3 and DBus of course.
Hope that helps!
No.
*LOL*
I know you are trying to be funny, but please don't confuse people: these are generally not Microsoft .NET applications; they use the C# language and standard library together with common open source libraries.
By analogy, Qt applications written in C++ have nothing to do with MFC applications written in C++; they are two different application frameworks that happen to be based on the same programming language.
I just went to Mono Project. They call it a ".NET" implementation. I further understand why they like to make the distinction between the ".NET Framework" as being specifically the C# and CLR pieces vs ".NET" that Microsoft refers to, but I'm afraid this is a very poor decision. Here's why.
.WEB Framework by Microsoft".
".NET" is Microsoft's brand. They use it to refer to many many different pieces of their technology that use the CLR/C# runtime. This includes such nebulous things as "Sign In.NET", the button that people use to login to MSN and Hotmail. What on earth does that have to do with Mono????? How is that related??
Furthermore, all of the tools that *include* many, many technologies that do not fit under the ".NET" umbrella (if strictly defined as the C#/CLR pieces) sport the brand. Even VisualStudio.NET is not completely a ".NET" thing.
So, my very firm advice and solemn plea is for Mono completely to drop *ALL REFERENCES* to ".NET". It is doing them no good whatsoever and just confusing people. It is not clear at all what ".NET" really is, and I'm afraid the Mono team have been roped into Microsoft's marketing machine, not realizing what's being done to them. In addition, I think that ".NET Framework" is equally muddled and confusing. I would recommend that they refer to Mono only as an implementation of the C# and CLR specifications as outlined by the EMCA standards body, with a link to those specific standards.
Otherwise, they are showing a complete ignorance of basic marketing. They are simply reinforcing Microsoft's brand in a very significant way, not just implementing their technologies. This may not be so bad, but one thing that Open Source/Free Software *really* *really* *really* desperately needs to get better at is marketing, if it ever hopes to get beyond an also-ran technology implementor of other peoples' technology. Take a small lesson from Firefox. If Microsoft released a XUL clone, integrate it with some parts of XAML, and changed the name of Internet Explorer 7 to "InternetExplorer.WEB", I would sincerely hope that Mozilla would not start calling Firefox an "Open Source implementation of the
I'm writing this as a mere user, not as a developer, but from my point of view assembly really is impressive. Just looking over the list of apps on freshmeat shows that assembly really seems to give developers a framework that let's them develop great application in a relatively short time and in the end it's users like me who profit from that. ;-D
Great works, assembly devs.
And to all those trolls that will come out of the woodwork with every assembly story, telling us that assembly is the end of open source:
Please, for once in your miserable lifes try to provide arguments for your point that go beyond low level is evil (though I would readily agree with that) and therefor assembly is the suX0r.
... and lemme check...
*censored*@*censored*:~$ dpkg -l '*' | wc -l
12382
Nice. From that I can estimate that ~1% of Debian's packages are Mono apps or SDKs, and that half of them aren't even worth noticing.
The world of programming has gotten better and be[tt]er over the years. It used to be that you had to have to deal with punch cards or programming right on the metal itself. But in recent years development environments have improved tremendously approaching the ideal: ANYONE can write software even if they don't understand programming.
Take me for example. I work for a Fortune 500 company that is currently working on NextGen database products. I'm the chief software designer. Back when I was in college in the 80s, programming was a black art known only to nerds who wore underpants on their heads and uttered dark incantations. I never really got on with those guys because they just weren't popular enough and they smelled kind of funny.
But thanks to the miracle of the 90s, I am now a software developer myself. My dev suite is comprised of Photoshop (for mock layouts of the UI), Macromedia Flash and MS PowerPoint. With these tools I am crafting the nextgen interfaces that are what put my company at the top. We are drawing lots of attention and turning lots of heads with our products because only we know what the users want these days. Our database product is an award winning package that combines the ambience of Myst and Riven with an Oracle backend and a hint of The Matrix. Users want cool looking apps, not some archaic software that just displays data. Why settle for an app where the text is just displayed in a scroll box, or worse through a terminal emulation program like WRQ Reflection? Our app flys in the text from the side and makes the text sparkle like you see in the intro to a lot of movies. That's the key folks, don't look to Silicon Valley for great software ideas, look at Hollywood. They get it right.
Since I'm a generous guy, I'll share some suggestions about how to design great apps these days:
1. Always make sure that you focus on making the UI look as cool as possible. This requires the use of many tools to make sure that the interface is going to make the user look as good as possible.
2. Always add more features to your application because nothing helps users more than new features. And make them sexy. I'm not talking about adding automatic spell checking or useless shit like that. I'm talking about syncronized sound effects that reflect the actions on screen like you see in the best films.
3. Pervasive use of MPEGs. Our company got away from the old practice of using stupid 16 color icons for button functions and the like because we realized that this was confusing to users. Most of the time those images didn't mean much. Instead, we replaced them with full MPEGs running in loops to represent every possible function a user might do in the real world.
4. Watch all the latest blockbuster scifi films that make use of computer interfaces. The geeks get UI design wrong every time. Only Hollywood knows how to make cool looking UIs and only the best software designers know to take their cues from the film industry.
5. Require that your customers have the most powerful boxes to run your programs. We can't be bothered with idiotic businesses that want to keep desktop systems with PIIIs and 256 megs of RAM. How the hell are you supposed to expect the software to run properly? We tell all of our customers that they must upgrade all desktops to the following minumum requirements: Pentium 4 2.5 GHz or better, with 1 gig of RAM. That just barely keeps up with our advanced software, but it's the minimum. (Alienware makes the best business machines we've seen)
It makes me laugh when I see you geeks trying to come up with new programming languages and platforms. Mono. What a joke. You call that progress? I don't. Keep working on more tools like Photoshop, Flash and PowerPoint. That's where development is these days. All that antiquated complicated crap is just mental masturbation for losers with no life. I read an article recently about a company that is working on self writing software. If these guys succeed, and they partner up
-"...bad old ideas look confusingly fresh when they are packaged as technology" - Jaron Lanier (Digital Maoism on Edge.o
MS cant change the standard, because that would break all apps developed for it (not just for mono)
also they cant add too many things to the standard because people will get bored of upgrading a 200mb runtime environment every 3 days
Booo!!!
I for one, will fight this development tooth and nail.
-Coalition for the protection of calcium, lime, and rust.
Dateline: February 22, 2015
.NET objects."
Today Microsoft sued Mono for infringing upon its CLR patents after closing the license to CLR development last year. This jeopardizes the entire Open Source community now as much had been standardized on the CLR model.
Microsoft stated that "We are merely trying to protect our intellectual property and users security from being infiltrated by hostile and unsecure
Meanwhile, Open Source advocates vowed to develop their own CLR standard claiming, "This is an outrage! We played by their rules and followed their model. We support and implement CLR better than they do! It doesn't matter anyway as we'll just fork it!"
The Slashdot Liberation Front vowed DDS attacks. Microsoft responded by saying that Windows Server 2013 was more than ready to handle any attacks.
The Microsoft Web Servers were unavailable at the time of this writing for further investigation.
Richard Stallman was reportedly holding a party in his retire home.
How is this not like life?
Ford Explorer -- does that also access the internet?
Hyundai Accent -- is it about the korean language?
Honda Accord -- music perhaps?
People make names which they feel are the best for something. They rely on something's ability to be good at it to spread the love, so to speak. If it's good, people will remember it. If it's not good, it goes away and it's no issue. Do you really like how people went to ultrageneric names and domain speculation on the Internet? Pets.com? Mail.com? News.com?
Take a look at things which people remember. What about Napster implies filesharing? What about Suprnova? What about Google implies searching?
Naming is a magic game. Just because you don't like how others play it, does not mean they are playing it wrong. This whole "incorrect naming" meme is stupid and pointless. Start thinking critically about what you're saying before you repeat it everywhere.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
You are mistakenly assuming the Mono trojan horse project intends to be beneficial to open source and Linux...
Yeah well...I hear that Open Source is a total whore. Anyone who wants to can 'get in'. Bill shoulda known better.
http://xkcd.com/386/
I don't know the detailed inner workings, but it seems like these projects are forever doomed to being a shadow of a "mostly" implimentation riddled with "gotchas" and always a few steps behind. I don't blame the developers in any way, its just we all know MS does not play nice with others.
Another one of those "please save me from myself" whiners who faints at the mere sight of a pointer.
Listen kid, go play with your garbage collector and let real men do their work, mkay?
Ok, this is not a troll, but is problebly off topic.
I was just wondering - what if?
What if MS came out with MSLinux ( just a flat rebranding of RH ). What if it was just as free as other Linux distos, but had enough closed software added onto that base that they could customized Linux versions of their apps to only run on thier distro?
Wouldn't they give corporate customers looking at linux an alternative to Windows that would keep them with MS? Better a rebranded MSLinux and MS Apps/support lic. then nothing right?
Could that happen?
a man, a plan, a canal, panama
Java (14080 projects)
C# (2206 projects)
Also, don't forget there is a very interesting ahead-of-time Java compiler as part of the gcc toolchain, gcj. It isn't complete, but it is constantly improving and can now be used to write SWT and Gnome applications. Good stuff!
I hate to see C# getting any uptake when all it is intended to do is allow Microsoft to co-opt all of Java's good ideas while stifling portability as much as possible. It is a transparent Java ripoff.
Galileo: "The Earth revolves around the Sun!"
Score: -1 100% Flamebait
I don't have anything agains mono, and the C#/java seem pretty much identicle to my mind (There's nothing that compelling that one has thats not in the other).
.net apps that might run on linux if you didn't use this package or that package.
Its great to have a language that can come installed with linux (java cough* cough*). However mono ultimately will work OK, but will drive developers to windows in droves because of the better deveopment environment that Visual Studio.net offers.
I fear that ultimately there will be mono apps that can run sometimes on windows (if you install gtk# etc...etc.) and
Mono has its place, but I don't think cross platform apps is going to happen.
By extension, you could just as easily say that the implementation language never matters, it's all just a Turing Machine(*) anyway. Except it does matter. Support for cleaner syntax, extra type checking, virtual/non-virtual method dispatch, etc. all matter when implementing an OO design. You can avoid whole classes of bugs by having proper language support, and programmer time can be reduced considerably.
(*) We'll conveniently ignore the fact that computers aren't really TMs here. The point is still valid.
HAND.
An MP3-tagger.
Great.
What an outstanding achievement.
Mono, I wouldn't kiss it goodbye.
so are the two compatible? Which is more mature?
Bitch about Microsoft everyday, meanwhile as you use a start menu, taskbar, integrated filesystem/internet browser, and now C# and .NET in your rip-off desktop environments.
Remind me again what Linux has actually innovated first? I know this will get modded down, but I'm genuinely asking.
Can it be that nobody will reason that, by endorsing Mono as a .Net clone/subset, we allow Microsoft to dictate what an open-source product should do?
.Net, it is not very reassuring that resources invested in .Net will not be lost when migrating to Mono.
.Net plug-in that validates code against Mono to ensure that it's Mono-compatible?
FOSS can't beat Microsoft by embrace and extend. More so when it's Microsoft who hold the standard reference and not the other way around. They can make the Mono developers jump wherever they feel like, by extending and deprecating APIs at will.
And, by being a subset of
Changing the subject a little bit, is there a Visual Studio
http://www.dieblinkenlights.com
Try six months of programming in .net, and then try to tell me that MS was wrong with it.
It's seriously hot stuff.
Yeah, it's called Java and us smart folk in the vast world of computing have been using it for years dimwit...
Let's get it out of the way here. Everyone who's going to post about C# and .NET being controlled by a big, proprietary corporation that has been known to crush competition, post here. Meanwhile, ignore Java and Sun.
What are these good bits of which you speak? Or are we (yet again) confusing Java, the language, and Java, the platform? An argument can be made that the C# language learned and improved upon the Java language's experience. On the other hand, comparing the two platforms (i.e. runtimes and libraries) is a whole different bag. Granted, C# and .Net are possibly the best technologies to use if you are developing Windows applications.
But, to assert that these are the best options in any other environment is simply ludicrous.
Mono is in no way as mature, stable, feature rich (you name it) as the Java platform.
Pray tell where is my Mono equivalent of Jakarta, Java3D, Maven, HotSpotVM, Tapestry, Eclipse, Netbeans, IntelliJ, yadatada?
When you find them, then come back and tell me C# has "all the good bits."
Mono may have the potential to become what Java is today, but its not there yet.
I read
It sounds really cool, and Open Source hackers came up with this before Microsoft did.
Active Desktop?
Microsoft came up with taskbars, start menus, integrated filesystem/net browser, and now C#/.NET before "Open Source hackers" did. And whatever they didn't come up with, they ended up being the ones to popularize (i.e., taskbar). OSS is about cloning.
What are these good bits of which you speak?
Or are we (yet again) confusing Java, the language, and Java, the platform?
An argument can be made that the C# language learned and improved upon the Java language's experience.
On the other hand, comparing the two platforms (i.e. runtimes and libraries) is a whole different bag.
Granted, C# and .Net are possibly the best technologies to use if you are developing Windows applications.
But, to assert that these are the best options in any other environment is simply ludicrous.
Mono is in no way as mature, stable, feature rich (you name it) as the Java platform.
Pray tell where is my Mono equivalent of Jakarta, Java3D, Maven, HotSpotVM, Tapestry, Eclipse, Netbeans, IntelliJ, yadatada?
When you find them, then come back and tell me C# has "all the good bits."
I read
Answer is obvious. Security.
Right. So by that logic, you can write OO code in machine language. (Which you can't, by the by; no processor on the market today has a "frob this object" command in its opcodes.)
I wonder when this "OO is just a style" meme will die. Guys, we have different computer languages because machine language is icky. (Have you ever hand-hacked applications using debug.exe? I have. I didn't like it and I'm not going back.)
In order to guard our precious sanity from the frozen wasteland that is raw machine language, we've invented formal languages in which it's possible to describe mathematical constructs in terms of various different metaphors. PROLOG uses pure mathematical logic as a way of approaching the problem domain. Instead of raw 1s and 0s, we escape from it altogether and we get to think in terms of bindings and clauses. (Variables? What are those? Functions? Don't need 'em.)
LISP uses set theory to do the same thing. Learn set theory in and out and you'll discover interesting niches of LISP, and come to appreciate its alien beauty.
What's C? C's a portable Assembler that's been kludged up over the years. That's not an insult--sometimes what you want is a portable Assembler with 30 years of hacks on the side, because those hacks are what give it such power. The C language is designed in such a way as to make kludgy hacks easy to write, which is sometimes a great strength.
The languages we use lend themselves, quite directly, to how we think about problems and how we decide to solve them. As such, it makes absolutely no sense to say "well, you can do OO in any language." Sure you can. All Turing-complete languages are equivalent. But at that point, why don't you go back to machine code? That's Turing-complete, too.
When you've bled from your eyeballs on the raw binary, then come back to languages. Discover what each one brings to the table. Discover where they're superior and where they're inferior. You might discover a lot of new things along the way.
The 1.0 release got off to a nice start. I was able to easily install it on a development server and do some basic tests. I just returned to do some cross-platform anti-microsoft insurance for a C# based web app and...
Frankly, mono is now impossible to install. I am willing to use debian stable or testing, but with my sarge-base dev server, there are no debs and it is not possible to get mono to compile. I guess it will probably work on SUSE, but after my experience with RedHat as a partner I'll stick with debian.
Just from today's news...
Genetic Algorithm in the Kernel
That's because they keep thinking "Linux-only". It's not "I'm going to make a cross-platform app using C#", but "I like C#, I'll use it on Linux".
WAKE UP, GUYS!!!
If you want Mono apps to run in Windows, perhaps you should take a look at wx.NET.
From the link:
(end of snip)
Take two very good cross-platform things (.NET/Mono, wxWidgets)... a powerful combination like this could jeopardize Microsoft's monopoly if you ask me. And that is always a good thing.
GoMono!
Actually, reading that statistic I was impressed by how well C# is doing -- 1/7th as many projects as Java, and really all in about 2 years, and in the OSS community which isn't exactly MS's core area.
I think MS have recaptured a bit of their old magic here, in lowering the 'energy threshold' required to get a project going. That's what made VB and Excel so ubiquitous -- I'm not saying that that was a good thing, but it sure worked. The work you have to do to create, package and distribute a
Of course, I'm far from declaring victory for
Whence? Hence. Whither? Thither.
It's a 20MB runtime environment, and a 200MB SDK envieronment.
Why does Mono feel the need to include vaporware in order to bolster their list? portage-sharp has no files, no cvs, no nothing.
We actually agree, it's just that I felt you being a bit over the top with that one statement. :)
HAND.
-5 Funny. Ye-e-e-e-esssss....
when will we get stereo?
I am still steamed that Microsoft sucessfully (?) hijacked the term in the first place. Considering that it is a internet standard TLD designatator for network domains (originally... now just another TLD) it would seem that it should be off limits for trademark use as regards to computers.
.NET due to it being in the same or related industry.
Remember, trademarks are specific to a particular industry, and involve whether customer confusion would result. For example, it would be no problem if a fishing supplies manufacturer created a new fish harvesting device and trademarked it as the ".NET" fishing net, because that is in a different industry. But if I created software.net domain it now sounds like it MAY have something to do with MS's
Put another way, I could not trademark "facial tissue" because it is a generic term. For similar reasons, "Kleenex (R)" has to try very hard to keep its trademark from becomming a generic term, or risk losing it altogether.
McFly777
- - -
"What do people mean when they say the computer went down on them?" -Marilyn Pittman
oh right, but still, 20meg is still too much for dialup users, which are still common.
.net environment was distrobuted with every app that required it and it checked to see if it was newer than the one installed (like directX), they could get away with it. shit.
come to think of it, directX is distrobuted with every game that requires it, so if the latest
Message to moderators:
Stop modding down any anti-Mono posts. Many of them have valid points.
Ten cars which sound like Robert Ludlum novels:
1. The Honda Accord
2. The Isuzu Axiom
3. The Buick Rendezvous
4. The Mazda Protegé
5. The Alfa Quadrifoglio
6. The Diahatsu Charade
7. The Lambourghini Murcielago
8. The Mitsubishi Endeavor
9. The Oldsmobile Intrigue
10. The Subaru Legacy
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
Now you've written a whole lot to make clear that you think mono opens up open source for litigation from MS. The only thing that's missing is an argument as to exactly why writing an implementation of an open standard should pose such a risk.
Now I would readily agree that there are probably parts of the mono project that could turn out to be problematic, like implementing winforms, which is afaik not part of the standard. But, and that's really the important point here, mono itself and all the programs mentioned here written with mono and gtk# wouldn't be affected by any MS legal assault on mono's winforms implementation.
So what exactly makes you think that mono is such a huge risk?
It's Mono 1.2, not 2.0, that's coming on May.
What makes him think?
/. and of course everything anyone says on /. is God's own truth right?
Why nothing of course. He heard someone else say it on
That's all the proof HE needs...
I'm primarily a *nix developer, but this Mono implementation of
A good portable way to write programs might be to write the application core in standard C++, then write the UI in C#/Mono on *nix, Obj-C on OS X, and C#/.NET on Windows.
Thoughts?
I love Muine, but I don't like how I have to install a bazzillion dependancies to run a "light weight" mp3 player. Seems contradictory. If and when the application and all the dependancies work, the final products (at least the ones I've seen) are really nice though. I still prefer Muine over just about anything. I'm looking forward to trying BlueFunk.
Keep up the good work Mono team, I love C#, and I love how you are brining it to *nix.
I can't think of anything the GNU system needs less than another bloated Windoze language port. The list presented by the article was unimpressive - mostly just sleezy C wrappers and ill conceived "frameworks". Nothing with any legs. It is regretable that the good effort that goes into Mono isn't channeled into better C and C++ API's. Oh well, free software means people are free to waste their time.
an ill wind that blows no good
I'm not trolling, I honestly believe that there is such a thing as the best tool for the job, and for some jobs, C is the best tool. Would you write a device driver in Java or Python? A file system? A compiler? A 3D graphics library? Anything that runs in kernel space?
And speaking of best tool for the job, you may redefine "best" to mean "whatever makes my project easier to manage", but I'm a scientist, I don't really give a shit about that stuff. To me, "best" means best.
I'm afraid you simply don't grok the object oriented design methodology which is what oo means, the clue is in the name.
I'd say your confusing designing software and implementing software. So for example you say It's not about design. If it was about design, I'd be able to design OO applications in PROLOG and backwards-chaining declarative logic applications in C.
However one doesn't design an application in PROLOG, COBOL, lisp, C, c++ C#, Java or any other language, one implements a design in a specific language, one designs software on paper (or in a tool, I forget the name of them but Rational Rose is an example).
I do agree that a chosen target language may influence a design but IMHO one should design the software first and the design should influence the language and not the otherway around.
OO is not about design. OO is a feature of a language - I'm sorry this statement is simply wrong, the rest of this thread has a clear explanation of why.
AFAIK, Mono is a FLOSS re-implementation of .net and the whole suite that follows it (C#, etc.), technologies that are strongly identified... and *controlled* by our Redmond friends.
Over the last 25 years I have seen these people do whatever it takes to crush & destroy competition. Remember "DOS ain't done until Lotus won't run" when they were still trying to shove MultiPlan down people's throat? Even if, in reality, Mono has been implemented using unecumbered & open standards, I do not think that M$ will let those little details stop it from sueing the FLOSS movement (or just the Mono team) for theft of trade secrets or whatever nonsense they can think of.
This is like the SCaldera suit, anyone who knew anything about anything knew that the suit never made sense and that their claims were baseless. Yet it did not prevent Darl & co. to sue IBM and scare many a PHB into avoiding "Linux" and "open source".
That's what I'm afraid of. A repeat of the "theftware" accusations... A little FUD can go a long way with the decision makers, those who sign the cheques.
This comment has a valid point.
I didn't realize mono was so in vogue that it got exemption from criticism status on slashdot.
Good info. Thanks!
1. Mono is an implementation of an open standard. That this standard was developed by MS doesn't change the fact that it is an open standard. This standard is not controlled by our Redmond friends. Sure they are free to add new things to it, but that doesn't really affect mono, as mono as it is now will still be available and all the apps written with mono and gtk# will still be available.
.net as cross platform, MS has been very aware of mono and can be shown to have been very aware of it and on top of it they even worked together with the mono devs, so claiming that, oh, we just found out that something terrible is going on here probably wouldn't have any chance to stand up in court.
2. I agree with your "appreciation" of MS bussiness practices and I readily agree with you that MS wouldn't shy away from even the most disgusting legal assault on open source if it thought to profit from it. But this holds true with mono and without it.
I think one can even argue that attacking mono would be the stupidest thing MS could do, as, again, it's an open standard, MS is marketing
That's because they keep thinking "Linux-only"
Yes, and that's a good thing. I don't want cross-platform apps, I want the best apps possible for the Gnome desktop. I don't get the best apps possible for the Gnome desktop if people waste their time worrying about how their application is going to look on Windows or OS X. The whiners on those platforms are only going to complain that the application doesn't look "native enough" anyway.
Microsoft doesn't lose focus by worrying about how to port their apps to UNIX and neither should Linux developers worry about how their applications look on Windows. When Microsoft does create applications for multiple platforms, they hand-craft them for each target platform.
Mainstream applications shouldn't be cross-platform; it's a waste of time and results in a poor quality user experience.
What if MS came out with MSLinux
New! Improved! Microsoft Linux!
Don't be fooled by those inferior Linux products from the likes of Red Hat and others.
Buy only Genuine Microsoft (R) brand Linux. The Linux that Microsoft has embraced.
Yes, folks, Microsoft Linux has everything that you'll find in those other Linux knock offs. But Microsoft Linux has extended Linux with many great new patented features that set Microsoft Linux way ahead of the others. These features will extinguish the competition.
Using Microsoft Linux, you can still run every program written for those other generic Linux systems, while enjoying unique features found only in Microsoft Linux.
But wait! There's more!!!
Microsoft Linux is the only Linux that can run all your favorite programs, inclucing Excel, Word and Outlook, and many, many more! Now how much will you pay!?!
Order Now! Don't be left behind! Get in on a leading edge technology, from a leading edge company like Microsoft.
Unlike other brands of Linux, only Microsoft Linux has the stability, quality, and security that you've come to expect from the Microsoft name.
Limited time special offer!!! For a limited time, get a copy of Microsoft Linux for FREE! when you order Microsoft Office at full retail price! Remember, this is a limited time offer! This offer could be withdrawn at any time after our competition disappears! So hurry and order now!
[_] YES! I want to pre-order Microsoft Linux!
Enclosed is a blank check. When Microsoft Linux is ready to ship, please fill in the amount and then rush Microsoft Linux to me!
Those who would give up liberty in exchange for security and DRM should switch to Microsoft Palladium!
What the **** are "Tomboy, F-spot, MonoDevelop, Muine & Blam!"? I have never heard of a single one of those programs.
I use mono on both my main development platforms, Linux (SUSE) and Windblows,(sorry guys/gals, most my pay comes from M$ clients.)Mono and eclipse are my major Xplatform tools. It is fun to work with mono and I am always looking for more and more functions and libs. Infact I have two sets on each platform, dev and cvs /SVNversions.
I am getting ready to provide some patches, if accepted
Actually, Samba doesn't need to be Windows compatible to be useful either. Aside from the many other devices that speak SMB (many NAS units, etc), there's also the not insignficant matter of the POSIX extensions in Samba.
I'm increasingly inclined to view CIFS and Samba as an NFS alternative for Linux that does't suck. I'm hoping NFS4 turns out well, but I'm not holding my breath. We do need something to replace NFS, and we need it about ten years ago.
Microsoft invented none of that, even .NET/C# is just a rehashing of existing ideas. Actually Microsoft have invented a grand total of 'jack-shit' unless you include the help assistants.
For each item on your list, you'll find previous examples that don't originate from Microsoft. Granted - some of them may not be as directly related as others. But there's a lot less "innovation" than it sounds like you're expecting.
Remind me again where anyone associated with Linux has used "innovation" as marketing or moral justification? If you look at Linux and the Unix culture it more-or-less spawned from, you'll find that it comes closer to evolution than "innovation". This environment recognizes the process of building on previous work.
This doesn't mean Microsoft hasn't done particularly clever things - even "innovative" things. Nor does it mean that Linux (and similar environments) are all about copy-cat and incapable of having similarly cleaver things happening in their environment. But it does highlight the apparent importance given to "innovation" by each environment. And that is the crux of that particular Microsoft criticism.
Which has little to do with all the other criticism that targets other aspects of Microsoft's business.
Unfortunately, the latest stable release of MonoDevelop will not compile against Mono 1.1.4. If you need an IDE for your Mono work, you would have to check out the Mono sources from SVN. The SVN version of Mono also has its dependencies, many of which also would have to be checked out of SVN repositories. So, while Mono 1.1.4 is available, for the time being, I have to stick with 1.0.6 in order to continue working within an IDE framework.
a start menu - OK, I use that sometimes
taskbar - no way, I have my Gnome set up Mac-style
integrated filesystem/internet browser - you have to be kidding: what has web browsing got to do with my filesystem? I use Firefox for the web.
C# and .NET - I don't use either of them, but if C# is a half-decent language I don't object to apps being written in it
Remind me again what Linux has actually innovated first?
OK, I know that much of the above doesn't impact on the regular user most of the time, but it's worth remembering that the taskbar idea was stolen from RISCOS, integrated filesystem and web browser is a stupid idea anyway - about the only real innovation in GUIs from MS was the Start menu. It's good - but one true GUI innovation in 20 years from a multi-billion dollar company really isn't that great.
C# is an ECMA standard (which of course with generics et al Microsoft is breaking). This is NOT open, and certainly not in comparison to Java.
The Java Community Process go to the site and have a look at the "closed" and unchangable monstor that Sun has created. I mean its just scary to think that Java 6.0 is ASKING FOR JOINERS, to input into the next standard.
How would you become an ECMA member and propose changes to C# ?
An Eye for an Eye will make the whole world blind - Gandhi
Mono is more than an implementation of C# and Microsoft have patented the .NET API. History taught me not to trust Microsoft, so I'll pass on installing a CLR, forever. On one hand the EMCA CLR is no problem because I get by without java just fine. On the other hand, people are talking about targeting Microsofts little trap with core components and I'll continue to call these folk fuckheads for it.
"with 'super-hits' like Tomboy, F-spot, MonoDevelop, Muine & Blam!"
... funneh.), that stupid projector and powerpoint setup and you pitching new support and installation services for some really cheap software ... like free ... beer and speech. You're calmly cruising through the lists and what each does. With a nodding of heads and whatnot they listen to you drone. Then you jump forward and scream, throwing your hands out:
Keep that in mind for a sec. Disclaimer: i use GNU/Linux, support the EFF with real $$, and buy boxed distros when available.
Having said that, heh, F/OSS program/suite names just crack me up sometimes. i was doing fine until that last one.
Picture this: Dimmed boardroom (lolz, yes lights and minds
BLAM!
Swear all of holy hell, you're goin' to jail for dropping 4-6 members with heartattacks. Not good for business.
k. i'm done now. Sorry, i'm bored.
Disclaimer: I am the founder of Zamples, Inc. Go gently on our servers, they probably won't survive being slashdotted!
I think that sums up well the entire mono effort, unfortunately.
As others have posted many many times before, almost, but not quite compatability just doesn't cut it. And that's where mono will be when MSFT cuts the lifeline. If they even have to do that, keeping a version or two comfortably ahead achieves the same.
Funny to see hoo-hah articles such as these, and then in the same page, this article about Microsoft's efforts to patent the VisualBasic 'IsNot' operator. Call me a sceptic.
One has to admire the mono team, except, perhaps, for implementing a clone of a standard that is a clone itself (of Java).
I hope Mono dies... dies a slow and horrible death. What's the point? Learn a real language...
Here is the Mono challenge:
.Net or Java ?
.Net is supported by Microsoft on their platforms and app servers, so this would be my best bet for applications targeted soely for Windows.
Why should I use it instead of
To be blunt, I have some severe misgivings about the vision and usefulness of Mono.
Java explicitly supports multiple host operating systems, so this would make it the obvious choice for crossplatform development.
Why then should I use Mono instead of these environments ?
What distinct advantages does Mono have over either of these established and supported platforms ?
I second the motion. I have personally dealt with end users and potential customers who believe that ( .Net == Mono) and managers who have chosen .Net for a development solution over Java based on the misconception that Mono is a crossplatform (ie. Unix/Linux) runtime environment for .Net.
while (!asleep()) sheep++
so is there anything that can rescue java and the free side at this point ?
.net or mono fan. i consider it to be a MS strategy against free software at it's core.
just for the record, i personally am not a
a lot of the posts about the various libraries being patent encumbered, etc. seem well written and articulated.
so...the question remains...will Sun and IBM deal with this in some way or just let it keep growing ?
In fact some of their .NET stuff, esp. Passport may not even run off of the .NET Framework!
Yes, we all know about the patents (2.5 years ago), and we also know that you don't like Mono because it's Microsoft stuff, and we also know that you have 0 influence over what anybody else does.
What's the deal with web forums and IRC where people with personality disorders actually think that they can tell people what to use and what not to use?
I guess it's one of those geek things, where in real life they get shoved around all the time, so behind the keyboard they falsely assume they have influence.
Have you EVER used wxWidgets? No, have you even READ TF website?
wxWidgets is NOT an EMULATOR layer. It's a parallel implementation of an UI using the Native OS's widgets. From the wxWidgets site: "the open source, cross-platform native UI framework
with twelve years of evolution behind it".
It's not about how a widget should LOOK or FEEL. It's about using THE SAME CODE to make a program.
They even got a PalmOS version now.
Maybe for your small needs you don't need cross-platform. Maybe you're happy crunching bits and recompiling the most of your kernel, but you're certainly not the average Joe User - and that's a majority that has needs. These people right now are screaming when their machines are being invaded by spyware, viruses (and coming soon, rootkits)
. These people need to escape. And cross-platform applications is the way to go.
But if you really want to help people migrate from Windows to a safer Linux environment without losing their friendly commodities, at least you should give programmers the benefit of the doubt.
I AM a windows user. But I'm planning on migrating. And I want OTHER people to migrate to Linux. Linux doesn't belong to elitists... it belongs to the world, that's why it's Open Source, and GPL licensed. So please, stop building iron walls and let the Windows prisoners escape to a safer world.
After all, don't you want to be among the ones who were there, the day Microsoft died?
Certainly, I do.
Everyone praises mono.. i don't see why. While I agree that mono has potential, the garbage collection code is terrible. Try running mono for web applications or graphical applications on a UNIX platform. (GNU's not Unix :)
.net framework then do it.. that means it has to support all of microsoft's bs before you extend it with extra features! The whole thing is useless if you can't move a .NET web or gui app from windows to linux, freebsd, and OSX seemlessly. Thats what I want.
For example, Mac OS X or FreeBSD. Its terribly sad how often it crashes or does not work right. I tried to deploy a simple web app on freebsd once... it resulted in a bug report. Last I knew it was still open. (year old) I could get the compiler working in OSX, but it certainly didn't work as advertised. Another tred i see in the mono project is selective implementations.. if you want to make a compatible
Of course java does not support its "write once run anywhere" ideas any better but I certainly think its got a better chance.
hahaha, Miguel should stop kissing Bill and Stevie's asses. an bad habit which will only end in distaster.. hahaha
That's what it seems like the /.'ers who don't like Mono and C# are saying, that anything from Microsoft is automatically bad, and must not be adopted.
I got news for you, C# is a great language to develop with. Don't adopt it if you don't want to, which is fine with me, because that means there will be more jobs for me.
Are you a hacker?
Are you thinking about using mono?
If you answered "yes" to both of these questions, then Microsoft litigation might be exactly what you're looking for!
The patented libs in different part of build tree and ready to be yoinked at the first sniff of patent wars. Its amazing how the same stuff seems to popup. I posted about this in Mono: A Developer's Handbook (SEP2004).
peterrenshaw ~ Another Scrappy Startup
if the latest .net environment was distrobuted with every app that required it and it checked to see if it was newer than the one installed (like directX), they could get away with it
.NET Framework 1.1 Redistributable
That is exactly what is done. The framework redistributable is available here:
TODO: Insert witty sig
Lack of webservices is a major stumbling block for my development team. We'd love to be runnning on Mono vs. .Net, but the lack of even a light at the end of the tunnel for web service integration is keeping LOTS of developers at bay.
Also, the list of dependencies to run monodevelop is astronomical. After my 7th or 8th trip to google to find some arcane dependency, I gave up. I think it's better if you are running gnome, but not much.
wxWidgets is great, but cross-platform Nirvana it isn't. There are various aspects that aren't or can't be translated automatically: menu layout, keyboard equivalents, widget placement. A wxToolBar on Mac OS is a row of shiny Aqua buttons, not an HIToolBar. It can rearrange an Apply/OK/Cancel cluster, but that doesn't help when the HIG say preference changes should be immediate. I'm glad to have wxWidgets in my toolchest, but for many apps modular code and native frontends will offer a better user experience.
am i the only who thinks it is of dubious ethics that the submitter of the article on /. also happens to be the author of the article on OSnews?
The subject is all good & fine with me, but the method raises questions, IMHO (i do not want to offend anyone either, i'm just asking).
Actually, Ford Explorer would be closer to the original meaning of the word "explorer" than Internet Explorer was.
Karma: It's all a bunch of tree-huggin' hippy crap!
Which raises the interesting question of whether we should be looking for another level of abstraction for GUIs beyond widget toolkits that let you write one codebase that then applies the HIG rules of the platform (which, of course, have to be something formally codified rather than just a spec document) to generate a (relatively speaking) HIG compliant UI.
...) automatically make applications conform to HIGs. Therefore, if you write cross-platform applications using those toolkits, you either end up with a poor result, or you have to invest a lot of effort in each application, not only implementing the HIGs, but also fixing those areas where the cross-platform toolkit deviates from the target platform.
Well, you go looking, and if you figure out how to do a reasonable job at building such a high-level GUI toolkit, you go right ahead and share it with the rest of us.
Until then, however, the fact is that we have to work with what we have. And none of the cross-platform toolkits we have (Swing, Qt, wxWindows, Tcl/Tk,
Again, successful commercial companies like Microsoft or Apple don't waste time on this for mainstream apps: they develop for their desktop, anything else is secondary. Linux desktops need the same focus if they want to compete.
I don't know what worries me more: that Skynet is listed there, or that it's written in Mono!
Either that or they just invalidated Microsoft's .Net trademark since MS didn't enforce it by coming after them. :)
That would be sort of funny.
Having recently considered learning C#/Mono, a few things bugged me. Firstly, it was not easy to find a tutorial more complex than Hello World but less complex than "oh, look, we're going to be making a wordpad clone". Considering that it is much easier to program with C and GTK, or C++ and QT or GTK--, it will take some serious work to make Mono attractive if you're looking to attract the people who don't need Windows compatibility.
In the case of Eiffel I really think it's a case of not offering anything truly significant for programmer productivity. I mean, yeah, Design by Contract is generally a good idea, but it's nothing assert() and good coding standards can't provide. Non-trivial "contracts" can't be verified until run-time anyway, and assert() works just fine for that.
In the case of CSP... I must admit I'm not too familiar with it, but to me it seems rather like a restricted subset of purely functional programming. Of course, Occam is much lower level than, say, Haskell, but AFAICT all the CSP concepts have direct equivalents in Haskell, and the type system in Haskell is much richer. Given the choice I'd rather program (applications!) in Haskell.
(Anyway, I'm certainly no fan of C# or Java... their type systems are just too wimpy for my tastes...)
HAND.
Hi,
This is on behalf of the 3 guys who were mentioned, we contributed to the mono project as it was previously said, our contacts were Lluis & Miguel.
We didn't decompile the
Rotor is a SHARED RESOURCE, which means it can be used LEGALLY for studying, but not for commercial purpose, here is the link for the rotor license (http://msdn.microsoft.com/MSDN-FILES/027/002/097
We would like to thank the MONO team for giving us the opportunity of contributing in this project, it was very usefull for all of us (team members), and wish them the best of luck in finishing it.
The problem is more a political one. On Mono, future language extensions are dictated by Microsoft. The Mono developers could of course extend their VM in any way they want. But they would loose compatibility with Windows.
Yes, and that's a good choice: it's the way, C, C++, and lots of other languages have evolved. If Microsoft does a good job with evolving the language (they have so far), people will follow it, and if they don't, people jump ship.
On Java everyone can join the Java Community Process (JCP). Membership is free and every member is entitled to vote and can even run for election.
In order to become a member of the JCP, you have to sign a contractual agreement with Sun Microsystems. As a result, you invest lots of work, and in the end, the fruits of your labor are owned by Sun. That's a bad choice. In fact, I'd call it a scam.
Furthermore, because of Sun's draconian compatibility requirements, you are not free to change the language or libraries any way you like, even in your own implementation. That's, among other things, why Java has stagnated technically.
what CSP is, actually, although details are a little fuzzy... I was introduced to it on one of those wet conferences. Apparently you just don't see the same connection between pure FP and CSP which I see... Let me see if I can explain more thoroughly:
My thinking is along the lines that e.g. the seq (is that the name? Like I said it's been a long time...) operator in CSP maps onto the "do" monad, likewise the par operator in CSP maps onto a parallel execution monad, etc. etc. The pure functional nature of Haskell means that there are no nasty side effects (aside from monads). So threading is basically trivial given enough knowledge about the properties of the compositional monads. The trouble is obtaining that enough knowledge about the monads to be able to parallelize effectively. In Haskell, monad behavior is (essentially) arbitrary, but in CSP you are restricted to a predefined set of compositional operators (monads). The fact that they have predefined concurrency semantics means that parallelism is "built into" the language and so the compiler can make assumptions that Haskell compilers cannot -- thus enabling more parallelism.
I hope that clears up what I was talking about.
HAND.
There's an option for it somewhere
:)
This surely is the expression I read most when the topic is KDE
"When I first heard Daydream Nation it quite frankly scared the living shit out of me." -- Matthew Stearns
Hi, I agree with what Ahmad Tantawy and Ahmad Kadry have mentioned. I would like to add the following: 1- We consulted Rotor code for the Http client channel only, that was ambiguous at that time and we needed more information to understand how URLs are dealt with. This is the only part where we looked into Rotor. If anybody has the chance to look into our code and the Rotor code, will definately find differences, specially on the server channel side. 2- Miguel mentioned , that the code has been mostly changed and the remaining is broken. Well, I would expect so, for many reasons, one of them, is because that we didn't not do deep exception handling which we did admit so. Simply because, we anticipated that alot will be changed as the mono framework becomes more mature. On top of that, Mono V1.0 wasn't released yet, and therefore you could imagine the bugs and incomplete classes and namespances that were not implemented at that time. So for us to implement most of the functionality, we had to use the best out of what was available but at the same time is not good enough to stay forever and has to be changed when the framework is mostly completed. An example was the Socket class and how you had to loop until all the data you want to send is actually sent; which contradicts the standard .Net Socket class.
I believe that contributing to mono was a great experience, and it was so only because we did not copy code from somewhere else!!
Hussein
I think C# is a hideous language with lots of structural problems, but at least it's open to anyone who wants to implement the ECMA standard. Java is so terribly underspecified that half the time you end up guessing what behavior happens in certain circumstances, and if you're an implementor of a non-Sun JVM the only disambiguator is Sun's implementation of the JVM. Which means that it's not a standard, but a reference platform.
With an open standard, if there are disagreements about what the standard means, MS can't just change the spec to match their implementation (like Sun can with Java).
.Net and the CLI are an ISO Standard. Microsoft cannot sue them for implimenting a standard.