Hacker News new | ask | show | jobs
by azakai 4093 days ago
First, the code Microsoft released does not build and run on all platforms. They promised Linux support, and are working on it now in the open, but it's not there yet. So Mono can't just adopt the Microsoft .NET VM without losing features.

Second, Microsoft is open-sourcing their whole VM - JIT, GC, as well as compiler and libraries. Compiler and library code is already being utilized by Mono, and more all the time. However, Mono doesn't even have plans to replace their JIT or GC with .NET's, as far as I know (and the Trello board linked to in the article seems consistent with that).

Could Mono do that (once Microsoft's builds on Linux and other platforms Mono needs)? Yes in theory, but it would mean abandoning all the massive amount of work they put into their VM over many years. I don't know whether it would be rational or not to do so.

Licensing isn't a problem for Mono to use Microsoft code. However, Mono's runtime is LGPL licensed, and this has been a source of revenue for them (people pay Xamarin for licenses for platforms like consoles where LGPL is a problem). So to replace the Mono VM with Microsoft's could be a step back there.

1 comments

I can't speak for mono, but converging makes sense where it makes sense -- if mono has a solid implementation of something they consider core and the MS implementation isn't trivial to port, I don't see a good reason to port it.