Announcement

Collapse
No announcement yet.

Mono 4.0 Makes Use Of Microsoft's Open-Source Code, C# 6.0

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by paulpach View Post
    There are 2 real advantages that Java has: portability and community.
    Community and some niche is what drives most languages. If you strip away the community and established ecosystem of libraries and code from any language, the language is pretty much worthless. Apple's Swift is great for making Mac/iOS apps. If you remove the Apple connection, I don't think Swift has much value on its own. C#'s main use case has been building very Microsoft centric business apps. If you aren't building Microsoft centric business apps, sure the core C# language is adequate, but there is really nothing special about it.

    Originally posted by paulpach View Post
    A lot of .Net is decoupled from Windows. Unity uses mono and can deploy to iOS, Android, Facebook games, Windows and Linux.
    Unity is a great non-Microsoft use case for C#. Unity is a great game engine, they could have equally chosen Lua or even Java, but they didn't, they chose C#, which is a fine choice, and a great reason to use it on Linux. Outside of that, there are Microsoft-centric business apps.

    I don't think the world wants another open source, multi-platform Java-like tool. There is already Java for that. And on the JVM, there is already Scala, Clojure, Groovy, etc for different needs.

    Comment


    • #22
      One last point: programmers should choose the language they use based on where they want to take their careers, not on language features or minutae. If you want to do science type stuff: focus on Python or R and take the associated academic skill training. If you want to do games: do either C/C++, C#, or Lua depending on which way you want to approach. If you want to do open source big data: Java/Scala are great. If you want to write Microsoft business apps: C# or maybe F# and of course SQL are the ways to go. If you want to do theoretical stuff: try Haskell or Agda.

      Comment


      • #23
        Originally posted by Luke_Wolf View Post
        Until CoreCLR and CoreFX are complete and fully ported it's still necessary, after that Mono will be obsolete which I would expect by the end of the year. Also expect Microsoft to open source a lot more stuff over the next year, the wave isn't finished yet.
        TL;DR: I think a business case can be made for maintaining Mono. It's up to Xamarin (the developer of Mono) to decide which is the more cost-effective approach.

        I think Xamarin will have some tough choices to make in this regard. On the one hand, continuing to maintain Mono as an alternative implementation of .NET means that they will continue to chase a moving target and amass technical debt. On the other hand, by maintaining Mono instead of switching to .NET proper, Xamarin get to retain full control over Mono and ensure that it provides the best runtime for software created through Xamarin's flagship products. Xamarin will need to decide if the cost of getting patches accepted in .NET proper, where Microsoft's and other contributors' agendas will make the politics of patch acceptance more complicated, will be a lower cost than simply continuing to maintain and enhance Mono. Xamarin also need to weigh the possibility that by contributing to .NET proper in order to improve it for Xamarin's use case, Xamarin will also be making .NET proper a superior runtime for Xamarin's competitors as well.

        I guess what I'm trying to say is, it will be a business decision foremost, a political decision second, and technical considerations will probably come third.
        Last edited by Serge; 02 May 2015, 06:52 PM.

        Comment


        • #24
          Originally posted by Luke_Wolf View Post
          Until CoreCLR and CoreFX are complete and fully ported it's still necessary, after that Mono will be obsolete which I would expect by the end of the year. Also expect Microsoft to open source a lot more stuff over the next year, the wave isn't finished yet.
          They're still going to want it for their Android and iOS stuff. The only parts of Mono that will be "obsolete" are the parts that Microsoft releases that are useful, and that won't include a number of things such as WinForms (because it is heavily tied to Win32).

          Comment

          Working...
          X