Ionide, based on the Atom Editor, is a suite of packages that aim to provide a full-featured, modern, cross-platform, open-source IDE for F# development. InfoQ has talked with Ionide’s creator, Krzysztof Cieślak.
The recent proposal to add non-nullable references to C# by Microsoft’s Mads Togersen sparked quite a debate in the .NET community. The reactions were diverse, ranging from praise to preferring status quo.
Version 3 of WebSharper, the F# framework for developing web applications hits RTM this year. We decided to catch up with Adam Granicz, CEO of IntelliFactory, to learn what new features and improvements WebSharper 3 brings.
Microsoft have released the beta for TypeScript 1.6, and with it support for React. Program manager Jonathan Turner explains that while the TypeScript team has collaborated with teams responsible for libraries including Dojo, Aurelia, and Angular, React is "an important library" that that has been difficult for TypeScript developers.
F# 4.0 has been released for the big three major platforms (Windows, Mac OS X, and Linux). F# 4.0 brings a host of new features, bug fixes, and performance improvements that benefit users of the language whether or not they are writing code in Visual Studio 2015.
Two more significant bugs have been found when using RyuJIT and .NET 4.6. Code recompilation is not necessary to experience the effects, merely running existing code on RyuJIT (which ships in .NET 4.6 and is enabled by default) will cause severe problems.
Microsoft has released TypeScript 1.5, dramatically improving ES6 transpilation capabilities.
Continuing our look at the future of C#, we now take a look at Proposal 119. This would add first class compiler and syntax support for method-level contracts.
In C#, the readonly keyword can only be used at the field level. Under proposal 115, Readonly for Locals and Parameters, this would be extended to cover a many more scenarios.
Though on the “Some Interest” list, the next proposal is very controversial. The basic premise for the Lambda Capture Lists proposal is that it would allow more control over how variables are captured in closures.
Code Aware Libraries are “libraries that provide guidance on correct use through embedded tooling and operates on the user’s code in real time.”
The next proposal in our C# Futures series considers the possibility of offering extension fields. This in turn would allow for extension properties and extension events.
The async/await syntax in C# was well received, but now developers are asking for more. Specifically, they want to be able to return more than one value from their asynchronous function using a “yield return” like syntax. This capability is being referred to as “asynchronous sequences” in a new proposal for C# 7.
While all of the recent news has been focused on C# and Windows 10, F# isn’t standing still. Along with Visual Studio 2015 RC is the latest version of F# 4.0.
A big emphasis for many developers, especially those writing games or working on pure number crunching, is raw performance. One way to get more performance out of C# is to avoid allocating memory without having to copy structs instead. The next proposal shows how C# can expose the CLR managed pointer support to do just that.