Merge Mono and .Net Efforts to avoid Duplication of Work


I feel there is not point in duplicating work. So in the long run it might be the best to merge both efforts by evaluating and taking the best implementations into one framework. This way the community can focus more on improvements and new features.

Also having the rest of the .Net framework and tools opensource would help the cause.


I disagree, we’re better having two implementations so that we have choice. Mono does and can continue to do things that .NET does not do and vice-versa


Both Mono and .NET Core will continue to exist for quite some time. Today, we see that .NET Framework and Mono are mostly used in different places. For the most part, .NET Framework is used on Windows and Mono is used everywhere else.

With the entrance of .NET Core, we’ll see a different segmentation. As @Shmuelie suggests, Mono will continue to support scenarios that .NET Core doesn’t. It’s got 10+ years under its belt for supporting multiple platforms. I also agree that ‘choice’ is good.

We will definitely see code sharing between Mono and .NET Core. It’s possible 2-3 years from now that Mono will have taken a lot of .NET Core code (ex: RyuJIT) and updated it to support many of its supported architectures, even if .NET Core itself does’t. That would be a fine outcome.


I agree Shmuelie and rich. It should be about .Net/C# on as many platforms as possible in what ever form they want choise, Soma said something very close to that at connect. I believe there should be as much choice to use any .Net platform from .net micro to silverlight,moonlight ,WPF,LS /mono all ,every and any. freedom , who will decide the “favored” platfom?, no one.
the space shuttle main control system ran on 3 different separately engineered software , its called a triple-redundant flight control system. we shouldn’t be judging other peoples problem domains. people say silverlight is dead? do we have to listen to the tech de jour presentation crowd? I don’t feel anyone should suffer so that some others can feel better that they are on the right stacks. I always sense a bit of fear, and question the motives of anyone whose more interested in stopping someone else. an attempt to consolidate and kill everything else would make a few very happy, but would would be a disaster in the larger eco-system.


Hey guys!

We are to some extent going to get there. It will just take time.

In the short term, we are taking chunks of the reference source and porting them to Mono.

It is our intention to contribute our portability changes to .NET Core in two groups:

  • Changes we make to Reference Source or .NET Core to make them portable to Unix (and other systems)
  • Code that we have in Mono that could help .NET Core (as that is the only .NET that will be taking patches).

We will evaluate other pieces that can be replaced as they get open sourced. But having two VMs is not the end of the world until they serve a purpose, among them, currently Mono runs on a number of platforms and architectures under different constraints than .NET does.

Time will tell how they will evolve.


Some cases Mono may have better implementations while in some cases .Net may be better. So what I can saying is to take the best of both.

This should be a long term strategy in porting and merging. But the start can be to identify where each code base excels in and slowing start the sharing.


I totally agree with you Sirinath. The word “options” here is being misused as its not options in the sense of redundancy that people here are interested in but rather in the stability and portability of the tools and runtime pertaining to .NET they want to be using friction-less as possible. Having multiple runtimes cusses friction and in the long term is part of .NET Cores goal to remove it, it sounds like. I would hope its the same for Xamarin.

I’m sure much will be learned as time goes along as to what approach is best where it needs to be.


“The word “options” here is being misused” , no it’s in exact perfect right context,the word “Merge” is what was misused Merging which would be impossible limiting options, hence the pointless conversation , why do I always fall for the bait.

sense your here miguel , I have a couple concerns.

  1. on this thread
    Make the full .NET as a free, OSS and cross-platform ecosystem
    a guy name evo posted a link to his multi platform dev system, I never seen it before, dont know anything about them except visting his site, which does look preety dam , cool, better than your actually, not sure i they cant back up up, ran into a couple more in quick Web look. when I look back now I see his post is hidden, lets have a look shall we?

“WPF is a dead-end along with WinForms. Even though the .NET core runtime will be made cross-platform I doubt it whether Microsoft has the will to make a cross-platform UI layer for Windows, Mac and Linux development. We at Nevron however spend the last 7 years in building such a framework. Your .NET UI code can run inside Windows and Mac without any modifications and we are soon going on Linux too. Check out Nevron Open Vision7 - it is cross-platform by design. It does not use platform specific bindings (such as Xamarin.Forms, XWT, Eto.Forms etc.) - instead is more like a next generation browser - CSS3 level styling, DOM, Nevron Proprietary Typography etc. It is the only solution that guarantees you 100% UI code reuse across Windows, Mac and Linux and also ~100% pixel exact rendering and output. It serves as foundation for the Nevron Office, and is in active development.”

this offense is what?rude?
WPF is a dead-end along with WinForms.?
Ive been doing WPF for eight years, heard for years, even from softies, even direct from Executive in Dev Div, scott barns started it in 2010, WPF people don’t give a rats butt about , techno presitation talker bloggers,commentors, millions have full time jobs making good money doing with, WPF is dead has zero impact with us. besides its been said many times even on this forumn.
when I started this post it was in hope that even though the quy might have been a little rude in his statement but at least it wasn’t some weasel worded , “I just wanna here my self talk” or “everyone needs and wants what I want!”

the next post I did really find to be offensive, lets take a look.


Since this is a forum dedicated to discussing .Net open source efforts and collaboration/coordinated efforts between Microsoft and the community, please post the GitHub link of your product’s source code.

If your product is not open source and free for everyone to use, please stop propagandizing it here. This is not the right place for your marketing of proprietary products.?“
I was hoping you would go over and set HighCore staight and welcome evo to the comminity.
maybe I expected too much.”

if this site is gonna be like the mimick the awful practice of trying to use techinal forums and evanglism as marketing tool,(at least microsoft moved there awful evangelism program to the marketing department)
quess what, count at least me out, which by now may make you happy?
really inertested to see your response, do you want us to give you feature wish list for xamarin,
If someone posts a link to their WPF controls are you going to hide that?
sorry to put you on the spot, but spot meet miguel

  1. (seems like tiny issuse now but) you where quoted saying this on the Register

“They are open sourcing .NET in a couple of stages,” says De Icaza. “There is full .NET, and the .NET Core, which is this new rethought and more nimble version.

“The full .NET Framework is bundled with …

did the guy miss a quote character before the “which is this new rethought and more nimble version” or did you say that?
that guys a hack anyway, troll headline back by a writer not a real dev, you think he could at least type,
I won’t post a link to his drivel. you should correct him if you didn’t say it.


Are you doing a tracker based in each method / class, like when Mono started?

.NET Foundation Website | Blog | Projects | Code of Conduct