DuoCode claims to support a number of C# features, including strong-typing, class-based inheritance, reflections, generics, lambda expressions and Linq. Other advantages that DuoCode should provides are:
debugging the original C# code: DuoCode uses source mappings that should allow developers to see and step through the original C# code inside Visual Studio or the browser.
strongly-typed DOM and WebGL: this can be exemplified in the two examples below:
using static DuoCode.Dom string userAgent = navigator.userAgent HTMLScriptElement script = (HTMLScriptElement)document.getElementById(scriptId); ... WebGLRenderingContext gl = canvas.getContext("webgl"); gl.bindBuffer(GL.ARRAY_BUFFER, bCubeTextureCoords); gl.vertexAttribPointer(aTextureCoord, 2, GL.FLOAT, false, 0, 0); gl.activeTexture(GL.TEXTURE0); gl.bindTexture(GL.TEXTURE_2D, texture); gl.uniform1(uSampler, 0);
compilation speed: according to DuoCode, "most of the times, the compilation is even faster than the standard C# compilation of the same code."
support for Continuous Integration: DuoCode claims to be fully integrated with MSBuild and can be run as an MSBuild task, or as a command-line tool.
InfoQ has spoken to Stav Harel, manager of DuoCode launch.
A few sample scenarios in which DuoCode can greatly benefit developers: Game development with WebGL; Server-side development with NodeJS; Building mobile applications with Cordova.
Could you provide some details about the way you use Roslyn and what benefits it brings?
Reliance on Roslyn has vital importance, as it allows DuoCode to keep up with latest technologies like C# 6.0 and Visual Studio 2015.
Their support of C# is partial at best; their interoperability with existing JS libraries is insufficient; some of them produce a cumbersome code that is not readable (and looks like assembly code); some of them do not permit debugging in C#.
All existing solutions rely on old compilers and are maladapted to new features of Visual Studio 2015.
DuoCode is currently in closed beta. A request to join the program can be submitted from DuoCode web site.
Sounds promising! I hope my beta invite arrives soon.
First name Last name
Re: Sounds promising! I hope my beta invite arrives soon.
Head of Editorial, InfoQ.com