Feeds

Microsoft C# chief Hejlsberg: Our open-source Apache pick will clear the FUD

Redmond goes for deep-cleanse

Boost IT visibility and business value

“Pushing that button was one of the more impactful clicks of my career,” says Microsoft’s C# lead architect Anders Hejlsberg. The click in question was made on stage at Microsoft’s Build conference in April, and its effect was to publish the .NET Compiler platform, codenamed Roslyn, as open source under the Apache 2.0 licence.

Roslyn is both the next generation compiler for C# and Visual Basic, and a set of APIs which enable deep integration with developer tools (like Visual Studio) for more powerful code recognition and refactoring.

Since Roslyn is the compiler for the forthcoming C# 6.0, does that mean C# itself is now an open source language? “Yes, absolutely,” says Hejlsberg.

C# 6.0 is expected in Visual Studio 2015, just released to the community as a technology preview.

This is sorta-open-source, of course. The language is open, but the Common Language Runtime (CLR) – the engine that runs the output – is not. An open-source C# 6.0 does not mean that Microsoft will be ceding control, since Microsoft approves everything that is committed, but anyone could fork the project and run it on Mono CLR (which is open source and works across platforms).

The C# chief insists that public contributions will be considered.

“We will apply the same metrics to the community that we apply to ourselves as we check in. We will treat community members like team members. People may create other forks, who knows what they will do? This is an Apache 2.0 licence so it allows you to do whatever you will, as long as you give attribution," he said.

“We feel that ultimately [outside contributions] will lead to a better outcome for C# and .NET, which in turn is a better outcome for Microsoft. I expect we’ll see a lot more community engagement, I think this will remove a lot of the FUD [Fear, Uncertainty and Doubt] that has been around over intellectual property rights or patents or whatever. It’s very clear what kind of licence this is, it’s a very permissive licence.”

Why the change of heart?

These statements will be seen by many as being rich coming from a Microsoftie. It is Redmond that is held responsible by many as being the originator of FUD on open source and Linux – particularly on licensing, patents, intellectual property and cost of ownership.

In the past, while Microsoft has formed partnerships with its one hand it has rattled the sabre with its other.

What is the reason for Microsoft’s new-found love for open source in its languages and frameworks? It may be a reaction to the decline of the Windows client, along with the “any device” strategy embraced by chief executive Satya Nadella. If there is no hope of keeping developers tied to Windows, the next best thing is to keep them hooked to C# and to frameworks that steer you toward Microsoft servers and cloud services. Open source C# makes it easier for companies like cross-platform specialist Xamarin to implement versions that run on other platforms.

Mono to adopt Microsoft's baby Roslyn

One of the consequences is that implementations of .NET and C# on other platforms will be more closely aligned with Microsoft’s release. GNOME co-founder Miguel de Icaza started the Mono project for C# on Linux and the Mac, and is now at Xamarin, which creates tools for compiling C# apps for iOS and Android. He appeared on stage with Hejlsberg at Build and will be adopting "Roslyn".

De Icaza and Xamarin are building a huge following, a fact evidenced by their upgrading to main-stage presenter at Microsoft's Build.

“They have already got it running, and it is my understanding that they will switch and make Roslyn their IDE engine, the thing that powers IntelliSense, refactoring and so forth,” says Hejlsberg.

Will C# now be identical on all these platforms? “The compiled result you are going to get will be identical. Mono is a different VM than the .NET VM, and Linux is a different operating system than Windows, and ultimately there will be differences, but they’re going to be minute,” Hejlsberg says.

Microsoft has not open-sourced the Common Language Runtime on which .NET code depends. However: “Mono’s VM, or Mono’s CLR, is open source, so there is a pure open-source stack now for the whole thing,” Hejlsberg says.

What is in C# 6.0? “I wouldn’t say that there are any huge features in C# 6.0. The team’s primary focus has been Roslyn,” says Hejlsberg.

The Roslyn compiler replaces the old compiler that was written in C++. “There is likely more than a billion lines of C# code out there; we want to be able to compile all of it,” he says.

However, there are new features, and you can find what is proposed on the Roslyn site. “One of the things we are considering for C# 6.0 is called primary constructors, the ability to parameterise your classes, and those become your constructor arguments, that allows you to write more succinct code,” says the Microsoft man.

Build a business case: developing custom apps

Next page: Other Build news

More from The Register

next story
KDE releases ice-cream coloured Plasma 5 just in time for summer
Melty but refreshing - popular rival to Mint's Cinnamon's still a work in progress
Leaked Windows Phone 8.1 Update specs tease details of Nokia's next mobes
New screen sizes, dual SIMs, voice over LTE, and more
PEAK LANDFILL: Why tablet gloom is good news for Windows users
Sinofsky's hybrid strategy looks dafter than ever
Fiendishly complex password app extension ships for iOS 8
Just slip it in, won't hurt a bit, 1Password makers urge devs
Mozilla keeps its Beard, hopes anti-gay marriage troubles are now over
Plenty on new CEO's todo list – starting with Firefox's slipping grasp
Apple: We'll unleash OS X Yosemite beta on the MASSES on 24 July
Starting today, regular fanbois will be guinea pigs, it tells Reg
Another day, another Firefox: Version 31 is upon us ALREADY
Web devs, Mozilla really wants you to like this one
prev story

Whitepapers

Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Why and how to choose the right cloud vendor
The benefits of cloud-based storage in your processes. Eliminate onsite, disk-based backup and archiving in favor of cloud-based data protection.
The Essential Guide to IT Transformation
ServiceNow discusses three IT transformations that can help CIO's automate IT services to transform IT and the enterprise.
Maximize storage efficiency across the enterprise
The HP StoreOnce backup solution offers highly flexible, centrally managed, and highly efficient data protection for any enterprise.