Microsoft, ECMA Join on Spec

Aim for standard that eases way for .Net.

Microsoft Corp. is moving to help C++ developers take greater advantage of the .Net platform, while easing the way for Visual Basic .Net developers at the same time.

On the C++ front, Microsoft is working through Ecma International, the Geneva-based standards organization, to push the development of a standard set of language extensions that create a binding between the ISO standard C++ programming language and Microsofts CLI (Common Language Infrastructure).

Microsoft and Ecma officials said that by delivering a standard binding for C++ and CLI, developers will be better able to take advantage of the .Net platform and more modern features, such as garbage collection and security.

Herb Sutter, program manager for Microsoft and convener of the ISO C++ standards committee, said that according to studies and job listings, C++ is now the most widely used cross-platform, vendor-neutral programming language. Ecma already has standardized the CLI as well as Microsofts C# language.

Sutter said Microsoft ships a set of extensions to C++ that enable .Net development, but there is a need for more support as well as a standard.

"Im an architect responsible for leading the team to make C++ work better with .Net," Sutter said. "To us, C++ is a very important language, and we want it to be complete."

In addition, "C++ is the language most of our customers are using to write code today for Windows," Sutter said. "Its a strong and mature language, and its widely used internally, inside Microsoft. And because C++ is so strategic, we need to make sure we deliver on the promises [of .Net] that you can write well for the platform with all the languages [supported by the Common Language Runtime]."

How Spec Helps C++ Developers

  • Adds support for generics, garbage collection and enhanced security
  • Improves integration with the .Net environment
  • Facilitates portability of C++ code
  • Eases migration of legacy C++ code

Microsofts push to promote C++ development and C# development coincides with the companys agreement last week to extend the support period for Java Virtual Machine. Sutter implied that developers using other languages are typically doing less intensive work. "C++ is what people are writing real code with," he said.

Ecma last week launched a task group, known as TG5, in its programming language technical committee to oversee the development of the C++ binding. Sutter said the group will have its first meeting at the beginning of December, and he expects to have all the technical work for the standard done by next September and a standard by the end of next year. Microsoft, along with Dinkumware Ltd. and Edison Design Group Inc., developed a draft of the standard.

Thomas Plum, a C++ developer and founder of Plum Hall Inc., of Kamuela, Hawaii, said the standard will help reduce development costs and simplify testing and application development, among other benefits.

Meanwhile, for Visual Basic .Net developers, Microsoft last week released a Visual Basic .Net Resource Kit. The kit is available for free download at msdn.

The kit features code samples, walk-throughs, sample applications, guidelines for upgrading code and licensed versions of component software from four Microsoft partners: ComponentOne LLC, Infragistics Inc., Dundas Software Ltd. and (Sax Software Corp.).

"The key goal behind the Visual Basic .Net Resource Kit is to help developers migrate to .Net," said Mike Sax, president of Sax Software, of Eugene, Ore. "There are a few reasons why developers havent migrated to .Net as quickly, even though nobody questions that Visual Studio .Net is a much more productive platform than previous versions. The resource kit tries to address these by helping VB developers migrate their projects, and providing some of the pieces that were still missing."

Sax also said he thinks the Visual Basic .Net Resource Kit "is an attempt to reach out to the Visual Basic developer. ... I think theyre going back to focusing on productivity for VB developers and power for C++/C# developers, and the resource kit is a small step in that direction."