InfoQ Homepage C# Content on InfoQ
-
LightSpeed – A Commercial ORM For .NET
LightSpeed is a commercial ORM for .NET that boasts of several features such as Entity Serialization, a robust VS designer, built-in LINQ support, support for DTOs and more. We got in touch with John-Daniel Trask, co-founder of Mindscape (LightSpeed’s maker) to speak more about the product and ORMs in general.
-
ESE Tookit: Use Windows' Internal High-Performance Data Store To Build Applications
The ESE Toolkit provides C++ and C# class libraries that allow easier application development using the Windows Extensible Storage Engine (ESE), a high-performance data store built into Windows.
-
CXXI Brings Advanced C++ Interop To Mono
CXXI, a new C++ Interop framework, allows easy interoperability between C# and C++ in Mono. Developers can, from C#, easily instantiate C++ objects, invoke C++ methods, subclass C++ classes, and more.
-
An Update on Google Native Client
Beside C/C++, Google Native Client has added support for runtimes such as Mono, and a richer set of Pepper interfaces: accelerated 3D, full-screen, File IO, debugging, and others. New languages -Lua, TCL, OCaml- are being ported, and several major producers have ported their game engines or their games to NaCl.
-
Behind the Scenes of Roslyn
Microsoft's Channel 9 has released an interview with the principal developers of the Roslyn project. Karen Ng, Matt Warren, Peter Golde, Anders Hejlsberg provides some useful information on the project's goals and what the team is trying to accomplish.
-
Migrating Established Code From .Net to Mono
Cross-platform code reuse is an important goal to many developers, and the Mono platform has been designed to facilitate this. But just how easy is it to move an existing .Net project to Mono? A recent article by developer Patrick Smacchia of NDepend shares his experience.
-
Building Visual Studio Extensions with Roslyn
Yesterday we talked about the Roslyn Compiler and Workspace APIs. Today we take a look at the Roslyn Service APIs and how they can be used to extend Visual Studio. The extensions we will look at today are Code Issue, Quick Fix, Code Refactoring, Completion Provider, and Outliner.
-
Microsoft Unveils its Compiler as a Service
Early reports suggested that the Rosyln project would just be a better runtime-accessible compiler and REPL-style interpreter, but it turns out that it is much more ambitious. By opening up the entire compiler pipeline Microsoft hopes that developers will create a wide variety of tools at many levels.
-
Mono 2.12 Roadmap
In anticipation of the upcoming Mono 2.12 public beta, Miguel de Icaza has released the planned feature set including many of the .NET 4.5 APIs and C# 5’s Async support. There is also an improved garbage collector, support for the full table of Unicode surrogate characters, and a new backend for the C# compiler.
-
The Cost of Async and Await
Asynchronous techniques can offer significant improvements in an application’s overall throughput, but it isn’t free. An asynchronous function is often slower than its synchronous alternative. Stephen Toub of MSDN Magazine has recently covered this topic in an article titled “Async Performance: Understanding the Costs of Async and Await”.
-
Design Details of the Windows Runtime
The Windows Runtime (WinRT) was created to provide a fluid and secure application experience on Windows. WinRT was influenced by both .NET, C++ and JavaScript. WinRT does not replace the CLR or Win32, but rather provides unified support for applications written in different languages to run on Windows using the new Metro UI.
-
C# and Visual Basic on the WinRT API
While Win32 APIs can be called from .NET languages, doing so can be quite difficult. So for the last two year Microsoft has been building a replacement known as Windows Runtime or WinRT with cross-language support in mind. WinRT components can be created in both C++ and .NET and may be consumed by both of those as well as JavaScript.
-
Java Lambda Syntax based on C#, Scala
A recent posting on the lambda-dev mailing list announced the conclusion that the Java Lambda syntax will be based on C# syntax, very similar to Scala's implementation that many are already familiar with: "It was better to choose something that has already been shown to work well in the two languages that are most like Java – C# and Scala – rather than to invent something new."
-
WCF Support Improved in Mono
Xamarin's first official Mono release came out earlier this month with many bug fixes, OS X Lion support, a “vastly improved WCF stack”, and better debugging support. The version number is 2.10.3, which makes it a short-term support release. Those who desire a long term commitment to support should stay with the 2.6 series until Mono 3 is ready.
-
New.NET Async Control Flow Explained
Alan Berman recently explained the details of how the new Async and Await keywords impact the flow of control. Using these keywords allows an asynchronous function's return values to be processed without using explicitly defined callbacks. This allows for more natural code grouping, as calling and processing of an asynchronous function can occur in the same function.