It’s Time for Language Divergence


In It’s
Time for Language Divergence
, Patrick Meader discusses divergence between C# and
VB programmers.

I agree that VB and C# users have differences between them, but I think that saying
that the languages should diverge is a strange position. It’s not about divergence,
it’s about the making sure that VB and C# serve their customers well. If that means
language divergence, then that’s fine


Comments (2)

  1. Kevin Westhead says:

    Having used both C# and VB I’ve never understood why some differences exist. For example, C# has the using statement and the destructor syntax which conveniently do some work under the hood (ironically things that I would describe as typically VB in style).

    The using statement handles the call to Dispose for you and the destructor syntax makes sure that the base finaliser is always called. I’m sure there will be plenty of VB developers struggling to remember to wrap calls to their disposable classes within a Try..Finally block. Also the MSDN VB example for implementing a Dispose method neglects to call the base class’ finaliser when overriding the Finalize method, showing how easy it is to make these mistakes.

    I would say that, while divergence may be necessary in some circumstances, greater parity is still required in others.

  2. Eric says:

    Some differences exist simply because the VB team and C# team are separate, and we either aren’t totally plugged into what the other group is doing, or we put different priorities on features.

    On "using", I can’t speak for the VB team, but I know that they knew what the C# team was doing.