Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CoreCLR and project Mono relationship after Microsoft open-sourced the .NET

Could someone explain to me what is the current relationship between Mono and the open source/Linux portable .NET stack (CoreCLR, CoreFX, Roslyn, ASP.NET) recently made available by Microsoft?

It's rather clear these projects overlap so I'm curious what's the roadmap for both of them - will Mono somehow replace their own component with the new ones from Microsoft, or are they going to coexist somehow?

like image 477
nightwatch Avatar asked Feb 07 '15 06:02

nightwatch


People also ask

What is CoreCLR in net core?

CoreCLR is the runtime for . NET Core. It includes the garbage collector, JIT compiler, primitive data types and low-level classes. docs.microsoft.com/dotnet/core/

Why did Microsoft introduce .NET core?

The goal of . NET Core is having a single code base that can be used to build and support all the platforms, including Windows, Linux and Mac OSX. Of course, certain components, such as the file system, require different implementations. The NuGet deployment model allows us to abstract those differences away.

Is .NET 6 the same as .NET core?

NET 6, though, is ASP.NET Core 6, a major upgrade of Microsoft's open source framework for building modern web applications. ASP.NET Core 6 is built on top of the . NET Core runtime and allows you to build and run applications on Windows, Linux, and macOS. ASP.NET Core 6 combines the features of Web API and MVC.

Is .NET Core 3.1 supported?

NET Core 3.1 was originally released on December 3, 2019 and is supported for three years. But the actual end of support day will be the closest Patch Tuesday starting that date, which is December 13, 2022.


1 Answers

I think the answer may evolve over time but I understand Microsoft and the Mono Project will work together, or at least Microsoft will allow Mono to work with their open source .Net stack.

http://www.mono-project.com/docs/about-mono/releases/4.0.0/

While Microsoft is working towards .NET Core: a redistributable and re-imagined version of .NET, the project remains a work in progress. Mono at this point continues to provide an API that tracks the .NET desktop/server version.

This means that most of the code that we have integrated comes from the ReferenceSource drop. In the future, we will deliver a “Mono Core” along the same lines of .NET Core to allow the use of the Mono runtime with the new library distribution system that is being developed with CoreFX.

And Miguel de Icaza (CTO and Co-founder of Xamarin and founder of the Mono project) has commented that:

http://tirania.org/blog/archive/2014/Nov-12.html

.NET is being open sourced under the MIT license. Not only is the code being released under this very permissive license, but Microsoft is providing a patent promise to ensure that .NET will get the adoption it deserves.

And for the two projects in particular:

Mono will be able to use as much a it wants from this project.

...

Microsoft has stated that they do not currently plan on taking patches back or engaging into a full open source community style development of this code base, as the requirements for backwards compatibility on Windows are very high.

like image 138
KCD Avatar answered Sep 22 '22 16:09

KCD