If you attended Microsoft TechEd 2009, you got the opportunity to hear the legendary Anders Hejlsberg talk about the big ideas in the next version of VB.NET - VB 2010 - in his charming Danish accent, and Jonathan Aneja, Program Manager for Visual Basic, talk about the details in his charming Canadian accent. (Can you say, "A-boot Visual Basic?")
Hejlsberg was up first and the first thing he said was that a goal for the future is for VB.NET and C# to "Co-Evolve" and become more alike rather than more different. In other About Visual Basic articles, you may have noticed when I pointed out a few great features in VB.NET 2008 has that are missing in C#. According to Hejlsberg, that kind of thing will come to a halt. "Every time we add a feature to one we hear from the other community that, 'Boy, we would sure like to see that feature too.'" So they're just going to do it that way to begin with from now on.
I foresee many many more sessions in Microsoft conference rooms where the VB and C# teams just try to agree on just what features they're going to implement.
Hejlsberg also said that three trends in programming would be emphasized:
- Declarative
- Dynamic
- Concurrent
Declarative programming lets you program "what" you want done, not "how" you do it. Microsoft's new LINQ technology is a great example of that trend because you just tell the compiler what data you want and let the compiler figure out how to get it.
Dynamic programming allows the compiler to be as flexible as possible and bind to needed modules right at runtime. Jonathan Aneja explained more about that at the end of his part of the joint presentation.
And Concurrent programming lets different parts of your program run "concurrently". Running more units of work on a single processor is not what we're talking about. (That is, all the processes you can see in Task Manager.) The concurrency that Microsoft will add in the future is the ability to run different parts of the same process on multiple processors. As Hejlsberg said, "That's a whole different kind of programming. It's almost impossible today to buy a single core machine. ... If we want our apps to run faster and be more efficient, we gotta find ways to take advantage of all these CPU's."
Next up: VB Program Manager Jonathan Aneja!
