Slashdot Mirror


Mono Project Releases Version 1.0

theblackdeer writes "Just poking around the go-mono.com Mono website; it's now the multi-colored mono-project.com. Even better, it updated before my eyes to include the 1.0 release. Screenshots are (slightly) updated, too. Mono 1.0 includes the Mono Develop IDE (based on SharpDevelop, I believe). Download now and start your GTK# engines!" Alliante adds "You can download the Release Notes and the Packages on their website."

39 of 517 comments (clear)

  1. Licensing concerns abated by SIGALRM · · Score: 5, Informative

    From the FAQ:

    The Mono project has also sparked a lot of interest in developing C#-based components, libraries and frameworks

    Yes it has. In our company's roadmap, we considered C# and Mono, but the controversial elements of their licensing (ASP.NET, ADO.NET, and Windows Forms subsets) gave us pause until we researched it further. Most of it is covered under the ECMA/ISO and the other technologies developed on top of it.

    Looks like the Mono strategy is to work around the patent issues by using a different technique that retains the API but changes the mechanism.

    --
    Sigs cause cancer.
  2. Re:How important is this for Linux? by chetohevia · · Score: 4, Informative

    As long as you don't use P/Invoke or too many of the Windows.Forms items, it should do fine. That's part of the whole point.

    The other thing you can do is run Gtk# on Windows for your xplatform GUI. :)

  3. .NET terrarium.. by joeldg · · Score: 4, Informative

    Wonder if that can be run in mono..
    installing to find out.

    I have been playing in GTK getting sprites and such working, but would like to use this for more portability.. .NET terriarium is damn cool
    http://www.windowsforms.net/default.aspx?tab Index= 6&tabId=42
    Check it

  4. Re:How important is this for Linux? by Tobias+Luetke · · Score: 5, Informative

    As long as you either use GTK# ( download ), wxNet or console mode you won't even have to recompile it under mono on linux/MacOs/whatever. You will be able to just run it.

  5. Re:How important is this for Linux? by Anonymous Coward · · Score: 2, Informative

    This would depend upon which class libraries you used. Basic apps should work fine, but those using the windows GUI APIs wil not be portable.

  6. Re:How important is this for Linux? by jdh-22 · · Score: 2, Informative

    It will take a little bit of porting if you have any Windows.Forms or any windows32 API calls (hah). Most of the Windows.Forms stuff is currently handled under Wine with Mono. Changing that stuff over to GTK# wouldn't be too bad, plus they would be able to use the application on Linux, and OS X.

    I would like to congradulate the Mono developers on a job well done. Programming languages are finally becoming a little more senesible!

    --
    Every Super Villan uses Linux.
  7. Try MonoDevelop by Anonymous Coward · · Score: 5, Informative

    For those looking for an IDE, try out MonoDevelop 0.5. It doesn't have a gui builder, but has code-completion(intellisense), class browser, project management, etc... It's a port of Sharpdevelop.

  8. Re:How can Miguel say that Mono is independent.. by Anonymous Coward · · Score: 1, Informative

    On the face of it that seems like a pretty poor troll, but I guess I bit.

    C# is an ECMA standard. Stating a preference for developing it as a standard instead of following an embrace and extend strategy is perfectly reasonable and doesn't imply dependence on anyone.

  9. Re:Someone... by B1ackDragon · · Score: 2, Informative

    I've used Muine, a while ago. It automatically downloads album covers from amazon or something, which was cool but didn't always work. Also, it is organised into albums, so if you've got a directory of music thats mix and match, you have to select an album just to hear the one song off of that album. I could be wrong however, it was a while ago.

    Actually, I think it suffers from that all too common among Apple and Gnome base apps problem of "Its so intuitive it's annoying." I like an asthetically pleasing app as much as anyone, but it's almost as if people are afraid of control and buttons and things these days. If you're used to XMMS, it's going to be hard to beat in terms of functionality.

    --
    The snow doesn't give a soft white damn whom it touches. -- ee cummings
  10. whoops, meant to post as top-level comment by jbellis · · Score: 1, Informative

    oops.

  11. Re:Why .NET and not Java? by miguel · · Score: 4, Informative
    First, keep in mind that Mono also ships with a Java VM, so your Java code will work on Mono ;)

    There are other reasons, I do not claim these are all of the possibilities, but here are some more:
    • Multi-language support by design, which lets some complicated languages like C, C++ and Fortran
      to be supported without hacks.
    • ValueTypes (structs) are not supported in Java, which is a source of major pressure on the GC, an
      issue solved completely by the availability of it
      on .NET
    • Today: Generics are a VM feature, not only a language feature: which means that your list of
      ints will be a list of ints, and not syntactic sugar for a list of objects of Integer. Importan
      for performance.
    • Binding APIs for C# and .NET is trivial, which is why there is a whole industry of bindings
      for the framework: its trivial to call back into the old code base, without using JNI of any kind.
    • Some people care about the fact that it has been standardized by ECMA.
    • .NET improves upon the lessons learned from Java and were able to make changes that Sun could not
      (yes, that means that someone else can build something new now, and fix the .NET mistakes ;-)
    • Some of us prefer C# the language to Java the language.


    But feel free to use Java for doing Gnome applications, I have nothing against it, we are
    only an equal opportunity platform provider. Let the big boys fight it over.

    Miguel
  12. Re:Why .NET and not Java? by Timesprout · · Score: 3, Informative

    Ive been a big critic of Eclipse in the past but 3.0 is huge improvement over their previous efforts and its not actually bad. IDEA IntelliJ is probably the best IDE out there but will cost you a few bucks. NetBeans is passable or you can download JBuilder Foundation which is quite limited, the decent versions will set you back a fair whack. I'm not sure if Oracle JDeveloper is free, it's a JBuilder spin off and from what I hear not bad. Eclipse is the pick of the freebies but I prefer to pay for the quality of IntelliJ.

    --
    Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
    What truth?
    There is no dupe
  13. Re:Why .NET and not Java? by Anonymous Coward · · Score: 1, Informative

    Uhhhh... slackware ships Sun's JVM.

  14. Re:Some please explain to me by bradkittenbrink · · Score: 4, Informative

    The greatest risk of the Mono project is Microsoft stepping in and filing suit against the project for using its API w/o a license. Doesn't anyone else see this? Why was Mono ever started to begin with? All you Mono developers are doing is putting $$$ into microsoft's pocket!!!

    Actually, the majority of the API is covered by the public EMCA specifications. Microsoft specifically made it impossible (very very difficult) to sue someone for that when they made the standards public. See the mono and microsoft faq for details. The fact that mono is perfectly legal doesn't change the fact that they may be putting $$$ into microsoft's pocket though.

  15. Re:Why .NET and not Java? by levell · · Score: 2, Informative

    SWF=System.Windows.Forms

    --
    Struggling to find a day everyone can make? WhenShallWe.com
  16. Slashdotted already :-( by james_bray · · Score: 2, Informative

    Anyone know of a mirror site?

    --
    http://www.reeb.freeserve.co.uk
  17. Re:Why .NET and not Java? by Coward+the+Anonymous · · Score: 2, Informative
    --
    -- Jason
  18. Re:How important is this for Linux? by bassburner · · Score: 2, Informative

    I developed a ASP.NET web application that connected to both Microsoft SQL Server and MySQL in Visual Studio .NET and moved it over to a Linux server for deployment without a problem. One important thing to note is that I understand that debug versions from MS .NET won't work in mono, only release versions.

  19. Re:Why .NET and not Java? by Anonymous Coward · · Score: 1, Informative

    And they subsequently removed it again in Slackware 10.0. So, no, Slackware doesn't currently ship with a JVM.

  20. Re:What the Mono guys don't get by elflord · · Score: 3, Informative
    is that using C# implies accepting being led by Microsoft

    No. You're the one who doesn't get it.

    Just exactly how is Mono+Linux any better than .NET+Windows?

    Runs on Linux.

    Does the Mono team have ANY plans to innovate beyond what Microsoft is doing

    Yes. See GTK-sharp, Qt-sharp, Mono.Posix, Mono.Data, etc. (in fact, try reading the FAQ before posting) The Mono and portable.Net projects are both interested in supporting the Microsoft APIs, but support for Linux APIs is also important.

  21. Re:Why .NET and not Java? by GlowStars · · Score: 5, Informative

    ...no distribution ships Sun's JVM...

    WRONG! SuSE does.

  22. Re:How important is this for Linux? by Anonymous Coward · · Score: 1, Informative

    Minus the .NET part, "Boa Constructor is a cross platform Python IDE and wxPython GUI Builder" (& with some Zope support). Ok, not exactly what you're asking for ...but still :)

  23. glade can fill the gap for now by Skeezix · · Score: 2, Informative

    And if you need a GUI builder you can always use glade-2 which ships with most distributions. I've designed practically the entire user interface for my little app, WoodPusher, in glade, and have been writing the code using MonoDevelop. Eventually there will be a new form designer for MonoDevelop which will not be based on glade at all, but in the meantime, glade gets the job done.

  24. Re:Not true... by The+Bungi · · Score: 2, Informative
    ...the source code for the java class libraries comes with all Java 2 SDK's, and the source code for the JVM and Hotspot JITs is available for download from sun..

    That doesn't make it "open" or "standard". Have you read the license lately? What exactly can you do with the source?

    .Net on the otherhand is the one that is not open, true, parts of the C# spec have been submitted to ECMA as standards, but the cast majority of the platform is under tight microsoft control (and covered by numerous patents).

    Ah, selective amnesia. Who controls Java again?

    Care to give me the URL of the C# compiler and the CLR source code?

    There you go. This is what people are doing with it.

    The Visual Studio project is not "open source", and it never will be. That includes Microsoft's implementation of the CLI, as well as the compilers.

    And yet that's still a heck of a lot more "open" and "standard" than Java could ever hope to be. Why do you think Microsoft went to ECMA with it?

    Sun could sue the pants off the classpath folks and everyone else that ever thought about doing a JVM or something like it. That they don't do it is another matter, but using Java conveys no less risk than Mono does at this point.

  25. Re:How important is this for Linux? by Dalcius · · Score: 5, Informative

    "The linux landscape is changing, its going mainstream, and there are a lot linux users who don't like that. I must humbly suggest to such people that you cannot do anything about it, and you should therefore either accept the reality or start moving to another system where you can feel more "l33t"."

    You call others narrowminded but I don't think you yourself understand the reasons people are afraid of the side-effects of Linux growth. Maybe you're just hearing a vocal minority.

    I personally cannot stand to use Windows these days, for many reasons... but one of the biggest is the environment. Under Linux searching for help, files or other content is particularly easy: the signal to noise ratio is quite good. Under Windows, it's "Sign up to download, we sell your email, now you can wait in a queue to get your file, but here are some ads to keep you busy". Pop-ups, spam, misdirection, just junk in general.

    The bottom line for this reasoning is that Linux it's just easier to find what you want (or at least a definitive 'It doesn't exit') in a shorter time. When the community starts growing, we'll see lots of wannabe applications attempting to sell themselves to you, registration keys and website registrations, hassles downloading files or getting help, etc. This is a Bad Thing.

    That all said, I'm in favor of Linux's growth and I think most people are. There aren't many true Linux users who do it just to be "leet" and I think its pretty silly to suggest that. Most Linux hobbiests do it because they are in control, in one way or another -- application choices, configurations, power, etc.

    Slapping a dogma on someone and calling them an idiot isn't helping anyone. I think the Linux community is ready to expand and wants to expand, it's just afraid of how severe the consequences might be when the 'unwashed masses' start using this stuff.

    Cheers

    --
    ~Dalcius
    Rome wasn't burnt in a day.
  26. Re:Any tutorials out there? by Sunspire · · Score: 4, Informative

    Check out the The Mono Handbook for tutorials and general getting started instructions. It's still a work in progress, so many sections are still quite empty. Another resource you should familiarize yourself with is the MSDN developer documentation for most of the core .NET API, it includes a lot of examples.

    I also recommend you check out the standard GTK+ tutorial. A lot of it is still directly applicable to GTK# and it's more complete than most GTK# only tutorials. If you're already familiar with GTK+, Glade# for Rapid Development will help you get up to speed with Mono.

    --
    It's like deja vu all over again.
  27. Re:ah, the joys of playing catch-up by XMyth · · Score: 2, Informative

    Not abandoned exactly. There will be new APIs that supercede them for Longhorn only (Avalon/XAML) apps. What they're really trying to do is break the tie with legacy apps on Longhorn. Your System.Windows.Forms (which is really the only part that is changing with Longhorn) apps will not be using the latest and greatest API once longhorn hits, but that's about it. If you've properly seperated your UI from the rest of your app then this shouldn't be a *big* problem for most people....especially since it will work without any changes anyways.

  28. Re:PPC Support by arhra · · Score: 2, Informative

    The PPC JIT works pretty well (on OS X and PPC Linux), but getting it to compile on AIX would probably take a bit of hacking to work around the various low level differences... (i don't know how weird AIX is at the POSIX level, i just know it's... somewhat idiosyncratic, to say the least... from a sysadmin point of view).

  29. Re:Dashboard and OS X 10.4? by EMiniShark · · Score: 2, Informative

    I was only noting that they had the same name, and considering that Tiger's Dashboard was announced on Monday. Also note that, as has been pointed out in other threads here, Tiger's dashboard, while similar to Konfabulator, is actually much more similar to an Apple feature nearly as old as the Mac. It was Konfabulator that added a similar feature to OS X, arguably 'ripping off' an Apple innovation almost two decades old.

  30. Re:I stand corrected... by The+Bungi · · Score: 2, Informative
    One thing that bothers me, reading the shared source license it seems to insinuate that you cannot use the source for commercial purposes or create derivative works of it, so how is that open?

    That's right. Then again you can write your own implementation (which is permitted under ECMA's royalty free + RAND policy), which is what Mono is. The SSCLI is written by Microsoft and therefore carries whatever license they choose to stick on it. Miguel used a combination MIT+LGPL+BSD for Mono, I believe. The SSCLI has nothing to do with how you can use or interpret what Microsoft has released to ECMA, except that it is a very complete reference implementation of that spec. The .NET framework is yet another implementation of the spec, which has yet another license, tho that one places no restrictions on what you can do commercially with it - but you get no source.

    This is not "open source" or "free software" as most of you understand it. But again, that's besides the point when comparing it to Java.

  31. Re:Microsoft can kill this project anytime it choo by elflord · · Score: 3, Informative
    If Mono ever does really take off, Microsoft can clip its wings off in an instant.

    No they can't. read the FAQ

  32. Re:Why .NET and not Java? by Armchair+Dissident · · Score: 5, Informative

    I now have to use C# at work as our company has decided that this is what Microsoft's future is invested in. I've had a love-hate relationship with it, and my opinion of .NET is possibly clouded by my use of C#, rather than a criticism of .NET, but anyway:

    • Multi-language support by design is a hack. It's not real. C++, for example is not C++ as I, as a C/C++ hack, know it. It's a thing that is something like, but not quite C++.
    • structs as ValueTypes are a pain in the arse. They have the same syntactic semantics as classes but have no similarities. Because of this
      flibble foo = new flibble();
      flibble bar = new flibble();

      foo==bar"
      means two completely different things depending upon whether flibble is a struct or a class. Which has given me endless problems with DateTime.
    • Generics are not yet a standard feature of of .NET CLR. This is the reason given by Microsoft for not including generics as part of C#.
    • EMCA standardisation is a joke if the libraries can be butchered. The language is the least of the problems when portability is concerned. The precise way in which the libraries work and interoperate is the big problem.
    • .NET - as far as I can see - was simply a way of touting a "write once, run anywhere" platform, without actually proving the case. C# takes some things out of Java, and some out of C++, but never asks the question "why are these here". Operator overloads without templates, and without a good distinction between references are pointers spring to mind. (what does 'foo == bar' do?)
    • Some prefer C#, but I can't see why...
    Sorry Miguel. Mono is a worthy project, and I have it running on OS/X - it's impressive from that point. But as .NET stands, and especially C#, Microsoft got it hideously wrong.
    --

    The ways of gods are mysteriously indistinguishable from chance.
  33. Re:ah, the joys of playing catch-up by miguel · · Score: 1, Informative

    You are correct in that we need an existing implementation for Microsoft technologies.

    Sometimes Microsoft will help, they submited to ECMA everything needed to implement generics in the VM and the compiler six months in advance of their first public compiler. We were lucky enough to have a compiler with said features by the time they launched theirs.

    In some other cases, we do not care what Microsoft is doing. There are plenty of APIs that Mono ships with (check our release notes) including Gtk#, RelaxNG, Mono.Data.*, Mono.Security.*, Mono.Math.*, Novell.*, mDNS.*.

    Miguel

  34. Re:Go Cross-Platform! by Joe+Tie. · · Score: 2, Informative

    You might try the wxwidgits bindings for python. I've been using it for the past six months on a somewhat large multiplatform project, and have been nothing but happy with it so far. It's snappy, gives a native look and feel, and has a fairly nice gui builder with boa-constructor.

    --
    Everything will be taken away from you.
  35. Re:Why .NET and not Java? by mingot · · Score: 3, Informative

    Give an example of where this is needed.

    Um, anywhere that a method gets called continuously that has a large number small local variables (int, double, etc) that are used in calculations. My choices are to either pass in a re-usable object (which sucks when you have a method with 10+ local doubles) or to make the thing class level (if the method happens to be in the calling class) or to stash it in some static class that both of my classes now need to know how to interact with. Pretty much every option sucks, save defining the thing where you need it. Hell, if I was programming Java performance would have to suffer and I would not think twice about it (unless I *had* to) simply to avoid the maintenance headeaches of the alternatives.

    Also note that structs can be created, manipulated, and destroyed with Java with JNI and CNI.

    The entire point of using structs in .NET is performance and your solution is to wrap them with JNI which has its own overhead? Maybe you're still stuck on the idea that the only reason they exist is to gived pinned memory which can be used to interoperate with older C API calls. False. If that were the case NONE of the native types would be value. The value type would be something esoteric that was only dragged out when you needed to P/Invoke.

    Java 1.5 has auto unboxing. Same thing .NET has. This was added on top of JSR-14. You are probably looking at the original generics design for Java 1.5 on googled pages. Its been updated.

    It's quite possible that my general ignorance about most things Java is showing. I'll dig into this and see how it compares to the (admitadly date) materials I have read.

  36. Interesting paper by SuperKendall · · Score: 3, Informative

    You can implement scheme on the JVM too - read this paper comapring the compilation of Scheme to C, the JVM, and the CLR! It was put on 6/16/2004 so is pretty recent - the link came from here

    One interesting result is that precompiling .Net executables yielded no perforamnce gain over just leaving the executable in IL!

    Also, the .Net VM was found at this time to be generally slower than the JVM.

    I couldn't really find a complete Scheme for .Net - Scheme.Net is still pretty new, and Hotdog is not really done yet either.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  37. Re:Go Cross-Platform! by Jesus_666 · · Score: 2, Informative

    Or, if you don't want to make your Win users install the proprietary QT Windows trial, you could try FLTK.

    --
    USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
  38. Re:My System got Mono! by Teunis · · Score: 3, Informative

    debian-unstable's had the packages for a while. Works for everything I've tried... have to admit I haven't tried that much yet, but so far so good. Works nicely with apache2 last I tried.

  39. Re:Everyone is raving about Python here by Antity-H · · Score: 2, Informative

    for python informations :
    simply go to the python website (http://www.python.org), it lists quite a lot of tutorials for begginers to experienced programmers, it also has FAQs and a few papers about python design. The online documentation is pretty extensive too

    as for an IDE, you can either use eclipse and pydev (http://pydev/sourceforge.net, don't be afraid by the alpah/beta thing, it is quite stable). Or you can try eric3 (http://www.die-offenbachs.de/detlev/eric3.html). The latter also integrates with Qt Designer to create GUI with a visual editor, using pyqt.