Andrew Herbert, assistant director at Microsoft Research's Cambridge lab in the United Kingdom, says researchers have built a version of the C# programming language and Common Language Runtime that incorporates a programming concept called "generic functions." The code lets developers write templates for data structures such as arrays, trees, and lists that can be reused with multiple sets of data, instead of requiring programmers to write a new data structure for each set.
"I'd write a piece of program that expresses the concept of a tree," says Herbert. Then, one developer could use the generic function feature of the C# compiler to create a tree structure for user records. A second developer could apply that template to a group of digital photos, for example.
Generic functions appear in teaching and research languages such as ML, developed in the 1970s but have been hard to implement in business languages such as C++ and Java. Microsoft plans to include the functionality in Visual Studio Whidby, the code name for the next version of the tools suite after Visual Studio .Net 2003, which ships in April. Microsoft plans to build into that product extensions to the C# compiler, and a new version of the Common Language Runtime.
Herbert was in Redmond, Wash., for TechFest, a two-day event at which 6,000 Microsoft employees signed up to tour Microsoft researchers' exhibits and attend lectures.