• Neal's Blog

    Overrides and overload resolution, revisited

    • 0 Comments
    I've got some fun LINQ-related discussion to post soon, but I thought it'd be good to add a bit of a wrap-up to the last discussion here about overload resolution. I was happy at first having verified that our behavior matched the spec, so I moved...
  • Neal's Blog

    Overrides and Overload Resolution

    • 4 Comments
    I got an e-mail earlier this week asking a fairly common question regarding C#’s overload resolution. Before I launch into a discussion of the actual behavior of the compiler, think about what the output of the following program will be: ...
  • Neal's Blog

    C#, Java, and CS Education

    • 0 Comments
    I read an interesting article the other day about how CS is taught in school now. The article basically argues that you can’t learn real computer science skills in Java. Without debating his attitude towards the Java language itself (and...
  • Neal's Blog

    Enumerated Types: Enumerating the Values

    • 1 Comments
    One of the things you lose when doing class-based enums is the support of the System.Enum class and its static methods for all enum types. Take a look at the documentation on MSDN —the only methods that really remain applicable are GetValues,...
  • Neal's Blog

    Enumerated Types: Dynamic Differentiation

    • 0 Comments
    So class-based enumerated types allow you to define dynamic behaviors, where the consumer of the enum doesn't have to know specifically which instance of the enum he has; he need only invoke the appropriate method, and the type of the instance will determine...
  • Neal's Blog

    Enumerated Types: Using Classes

    • 1 Comments
    I said I’d blog about how exactly I use enums, but there are a lot of interesting issues here, so I think I’ll develop my approach over the course of a few posts. Here’s my simplest form of class-based enum: public class EnumType { public static...
  • Neal's Blog

    Enumerated Types

    • 4 Comments
    I had an interesting discussion earlier regarding enums and how they work in .NET, and since I haven't I blogged in a while, I thought I'd post some thoughts. Conceptually, an enumerated type is a type that has a set of values that can be (surprise...
  • Neal's Blog

    Breaking Changes

    • 3 Comments
    Something we in the C# Compiler team have been discussing recently is the issue of including "breaking changes" in our code. This is a big deal, especially for a compiler, which people expect to be pretty rock-solid. There are a lot of issues here, most...
  • Neal's Blog

    Expressions vs. Statements

    • 1 Comments
    This morning, I was discussing issues around my previous post with Mads Torgersen, the PM who owns the C# compiler, and it reminded me of the next issue I wanted to talk about. Something I'm pushing for in the Orcas timeframe is to add not only the Func<>...
  • Neal's Blog

    Func<> and delegate types

    • 2 Comments
    I'm a bit new both to the C# team and to blogging, so bear with me as I muddle through my first post about something that interests me. :) Let me start at the beginning. Since C# 1.0, one of the things that I liked about it (compared to Java, since I...
Page 1 of 1 (10 items)