C# Futures: Method Contracts

by Jonathan Allen on  May 18, 2015

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.

C# Futures: Immutable Variables

by Jonathan Allen on  May 05, 2015

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.

C# Futures: Closure Annotations

by Jonathan Allen on  May 04, 2015 2

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 with Roslyn

by Jonathan Allen on  May 01, 2015

Code Aware Libraries are “libraries that provide guidance on correct use through embedded tooling and operates on the user’s code in real time.”

C# Futures: Extension Properties and More

by Jonathan Allen on  May 01, 2015

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.

C# Futures: Asynchronous Sequences

by Jonathan Allen on  Apr 30, 2015

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.

C# Futures: Managed Pointers

by Jonathan Allen on  Apr 29, 2015

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.

C# Futures: Nullability Tracking

by Jonathan Allen on  Apr 28, 2015

Probably the most common error type in .NET is the Null Reference Exception. The root cause of this error is C#’s inability to express the concept of non-nullable references, which in turn makes compiler-enforced null checking it too burdensome. To address this problem, there is a proposal for mandatory and explicitly nullable references.

C# Futures: Tuples and Anonymous Structs

by Jonathan Allen on  Apr 27, 2015 2

With C#6 nearing completion, plans are already being laid for C# 7. While nothing is definite yet, they are starting to categorize proposals in terms of “interest and estimated plausibility”. In this series, we’ll be looking at some of the proposals starting with language support for tuples.

Microsoft Introduces LLILC, LLVM-based .NET/CoreCLR Compiler

by Sergio De Simone on  Apr 21, 2015

The .NET Foundation has announced the release of a new project called LLILC (pronounced "lilac"). The project, initiallycontributed by Microsoft, aims to provide a new LLVM-based native code compiler for .NET Core which will make it possible to run .NET programs "on any platform that CoreCLR can be ported to and that LLVM will target."

True Windows File System Access with AlphaFS 2.0

by Jonathan Allen on  Mar 13, 2015

A major limitation of the .NET framework is its inability to truly work with the Windows file system. Even seemingly basic operations such as working file paths longer than 260 characters long is beyond the capabilities of System.IO. This is where AlphaFS comes into play.

Pooled Memory Streams for .NET

by Jonathan Allen on  Mar 09, 2015

Like most languages that rely on a mark-and-sweep garbage collector, C# can run into performance problems when allocating memory too often or when making large allocations. Ben Watson, a Senior SDE at Microsoft working on Bing, ran into just that problem with the MemoryStream class.

The Road to C# 7 Has Begun

by Jonathan Allen on  Jan 29, 2015 9

With C# 6 nearly complete, work has begun on the next version. Like past versions, the first step is to set an overall theme and scope for what is to come. That vision has been shared by Mads Torgersen by publishing the first set of meeting notes for the C# 7 design team.

Xamarin Releases Unified iOS/Mac API with 64-Bit Support

by Matt McComb on  Jan 22, 2015 1

amarin last week announced version 8.6 of its iOS SDK (Xamarin.iOS), the first non-beta release to include the company's Unified API for iOS and Mac. The Unified API replaces the 32-bit MonoTouch and MonoMac APIs, enabling code re-use across both platforms and adding 64-bit support.

Microsoft Embraces GitHub for their .NET Compilers

by Jonathan Allen on  Jan 21, 2015

Microsoft is continuing their move from CodePlex to GitHub for their open source offerings. The F# compiler was moved on the 13th, with the Roslyn based C# and VB compilers following a few days later.

General Feedback
Marketing and all content copyright © 2006-2016 C4Media Inc. hosted at Contegix, the best ISP we've ever worked with.
Privacy policy

We notice you're using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.