The Best Advice I Ever Got

Just a quick link today: The super nice people over at InformIT (*) are running a series of short articles with the theme “the best advice I ever got”, which I think should prove to be an interesting series. They were kind enough to ask me to give an example of some good advice I…

11

Foolish consistency is foolish

Once again today’s posting is presented as a dialogue, as is my wont. Why is var sometimes required on an implicitly-typed local variable and sometimes illegal on an implicitly typed local variable? That’s a good question but can you make it more precise? Start by listing the situations in which an implicitly-typed local variable either…

29

Eric Rambles On About C#, Again

Rachel Roumeliotis, who amongst other things edits C# books for O’Reilly, recently did an interview with me where I ramble on about async/await, Roslyn, performance analysis as an engineering discipline, and some broad-strokes ideas for future language research areas. If you have sixteen minutes to burn, check it out! The O’Reilly Radar blog post is…

8

Implementation-defined behaviour

As I’ve mentioned several times on this blog before, C# has been carefully designed to eliminate some of the “undefined behaviour” and “implementation-defined behaviour” that you see in languages like C and C++. But I’m getting ahead of myself; I should probably start by making a few definitions. Traditionally we say that a programming language…

12

Persistence, Facades and Roslyn’s Red-Green Trees

We decided early in the Roslyn design process that the primary data structure that developers would use when analyzing code via Roslyn is the syntax tree. And thus one of the hardest parts of the early Roslyn design was figuring out how we were going to implement syntax tree nodes, and what information they would…

23

Announcing Microsoft Roslyn June 2012 CTP

Good afternoon all, I am happy to announce that we are releasing a second Community Technology Preview release of Roslyn, the project I actually work on, today. I am super excited! So, let’s cut to the chase. Key facts: Roslyn is a library of code analysis APIs useful for building compilers, development environments, refactoring engines…

10