BT

New Early adopter or innovator? InfoQ has been working on some new features for you. Learn more

Being a Polyglot Programmer

by Stéphane Wojewoda on  May 03, 2017 2

Every programmer knows a langage or two. Being a polyglot programmer is a different mindset, fitting with the "Engineering yourself" principle. Zaiste, co-organizer of Polyconf, a conference dedicated to IT polyglotism, explains what it means to be a polyglot programmer, why it is useful, how to use it in your day-to-day job.

.NET Futures: Asynchronous Streams

by Jonathan Allen on  May 01, 2017

Since async/await was announced for VB/C#, developers have been asking about an asynchronous version of IEnumerable. But until C# 7 and ValueTask, that was potentially challenging from a performance standpoint.

Emerging Technologies for the Enterprise Conference 2017: Day Two Recap

by Michael Redlich on  Apr 30, 2017

Day Two of the 12th annual Emerging Technologies for the Enterprise Conference was held in Philadelphia. This two-day event included keynotes by Blair MacIntyre (augmented reality pioneer) and Scott Hanselman (podcaster), and featured speakers Kyle Daigle (engineering manager at GitHub), Holden Karau (principal software engineer at IBM), and Karen Kinnear (JVM technical lead at Oracle).

TypeScript 2.3 Adds Generic Default Arguments, Async Iterators Support, and More

by Sergio De Simone on  Apr 29, 2017

TypeScript 2.3 extends the language syntax by adding support for declaring defaults for generic type parameters and for async generators and iterators. It also aims to improve integration with existing JavaScript code with a new compile option and introduces official support for language server plugins.

C# Futures: Relaxed Overrides

by Jonathan Allen on  Apr 26, 2017

A commonly requested feature in .NET is the ability to use covariant return types. An example of this would be overriding “virtual object Clone()” with “override Widget Clone()”. From a type safety perspective, this is perfectly acceptable, but C# doesn’t currently allow it.

C# Futures: Read-Only Local Variables

by Jonathan Allen on  Apr 24, 2017 1

Not too long ago the proposal for read-only local variables was revived. This is a much more modest feature than the read-only references proposal, but the two are complementary.

C# Futures: Read-Only References and Structs

by Jonathan Allen on  Apr 19, 2017 2

In C++ we have a feature known as “const”. This can be applied to parameters so that the caller knows that function will not modify the parameter and/or the object the parameter references. Under this proposal, C# would get something similar.

C# Futures: Nullable Reference Types

by Jonathan Allen on  Apr 17, 2017 2

No, the headline isn’t a typo. One of the new proposals for C# is to assume that all reference variables are non-nullable by default. Under the new syntax, you would need to explicitly indicate when a reference variable is nullable, just as you do for value types.

.NET Futures: Type Classes and Extensions

by Jonathan Allen on  Apr 12, 2017

Another feature being considered for future versions of .NET are type classes. Referred to as “shapes” in the Shapes and Extensions proposal, they would greatly increase the capabilities of .NET generics.

New Language Features in Visual Basic 15

by Jonathan Allen on  Apr 11, 2017

Visual Basic 15 brings with it partial implementations of two important C# features: tuples and ref returns. Neither feature is “complete”, but they do offer enough work-arounds that VB applications can consume C# libraries that make use of these features.

.NET Futures: Multiple Inheritance

by Jonathan Allen on  Apr 10, 2017 2

A controversial new proposal for .NET suggests the introduction of a limited form of multiple inheritance via abstract interfaces. This feature was inspired by Java’s default methods.

Visual Studio 2017 Brings F# 4.1

by Pierre-Luc Maheu on  Mar 28, 2017

The Visual Studio 2017 release in early March included F# 4.1 and an update of the Visual F# tools. F# 4.1 brings improvements and interoperation with C# 7 while the tools are the first version supporting the Roslyn workspaces.

Fable 1.0 Beta Brings Better Tooling Integration, New Project Format, and More

by Sergio De Simone on  Mar 27, 2017

F# to JavaScript compiler Fable has reached version 1.0 beta, bringing tooling improvements, a streamlined project format, and better code generation. InfoQ has spoken with Fable creator Alfonso García-Caro.

.NET Core Tools 1.0 Released with Full C# Support

by Jeff Martin on  Mar 13, 2017

The .NET Core Tools has produced its first 1.0 release. Focused on C#, the tools provide .NET Core developers easy-to-build applications for .NET Core and ASP.NET Core. While their release coincides with the launch of Visual Studio 2017, this is a multiplatform toolset supporting Windows, Linux, and Mac OS systems.

Visual Studio Code 1.9 Extends Tasks, Improves Markdown Support and Terminal Performance

by Sergio De Simone on  Feb 08, 2017

Following its monthly release cycle, Microsoft Visual Studio Code has reached version 1.9, which includes support for multiple-command tasks, synchronized markdown preview, faster terminal, and more.

BT