Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage C# 4 Content on InfoQ


RSS Feed
  • New Asynchronous Features Enhance .NET Framework 4.5

    .NET Framework 4.5 Beta not only brings the Async/Await keywords and language simplifications to C# and Visual Basic, but also adds asynchronous methods to several common I/O and data access functions. New asynchronous features are available in ASP.NET 4.5, WCF, and WPF as well.

  • Optional Parameters Are Gaining Ground in .NET

    Optional parameters have always been part of .NET, but with C# unwilling to support it, using them was generally considered taboo unless work with COM libraries. Now that C# 4 does support them, we are starting to see them used for a lot more than just legacy code. Other uses include interoperability with dynamic languages, immutable data structures, and various parts of ASP.NET MVC.

  • CSI C# Interpreter Supports .NET 4.0

    CSI is a simple C# interpreter allowing command-line compilation of standalone C# files. A new version has been released to support .NET 4.0. CSI is open source with a full test suite.

  • Mono Introduces Experimental C# Language Extensions

    Having caught with the recent advances in Microsoft’s C# 4, the Mono team is now playing with their own extensions to the language. The two features they are experimenting with are string interpolation and support for multiple return values.

  • Interview: Eric Nelson on VS 2010 and .NET 4.0

    In this interview Eric Nelson talks about what’s coming in VS 2010, the C# – VB.NET convergence, the introduction of Parallel as a library, and Azure cloud computing.

  • Wrapping Stored Procedures in .NET Languages

    Creating wrapper functions for pre-existing stored procedures is surprisingly difficult in .NET. Stored procedures have certain calling conventions that aren’t generally used in the .NET Framework and many of them are not supported at all. For example, C# doesn’t support optional parameters and neither .NET language supports optional parameters on nullable types.

  • Making 0 Equal 0 in C#

    C# does not work well with boxed numerical values. Unlike Visual Basic, the basic numeric comparison operators such as == do not work with boxed types even when both values are the same type. Fortunately with C# 4 you can avoid these problems by using the dynamic keyword.

  • Interview: Don Syme Answering Questions on F#, C#, Haskell and Scala

    In this interview made by InfoQ’s Sadek Drobi, Don Syme, a Senior Researcher at Microsoft Research, answers questions mostly on F#, but also on functional programming, C# generics, type classes in Haskell, similarities between F# and Scala.

  • C# Feature Focus: Co- and Contra-variance

    With .NET 4, C# 4 will be able to support co- and contra-variance in generic interfaces. If you are not familiar with them, think of it as the reason why you can't pass an IEnumerable<Apple> to a function expecting an IEnumerable<Fruit>.

  • C# Feature Focus: Optional and Named Parameters, COM Interoperability

    Believe it or not, C# is going to have full support for optional and named parameters. This, and other features intended for COM support, will be included in C# 4. There was also a rumor about parameterized properties.

  • .NET 4 Feature Focus: Type Embedding and Equivalence

    In .NET 4 types will no longer be restricted to a single assembly. A single type, or part of a type, can be extracted from one assembly and placed into another. Why would you do this? Well first off all, to reduce the cost of including the Office Primary Interopt Assemblies from several megabytes to about 2KB by only including what you actually need.