Microsoft has hired ActiveState Tool Corporation to beef up the Windows features of the Perl programming language, an open-source technology. In the open-source movement, programming instructions may be freely shared, a contrast to the carefully guarded code from Microsoft.
ActiveState's goal isn't to help Microsoft make Perl its own, but rather to make Perl work better on machines running the Microsoft Windows operating system, chief executive Dick Hardt said today. ActiveState is a company devoted to selling Perl products, such as easy installation routines and services like notifying companies of the latest Perl developments, Hardt said. "Our mission is to make Perl as popular as possible," he said.
The announcement provoked accusations at the Slashdot discussion Web site that Microsoft was trying to "embrace and extend" Perl--in other words, add proprietary features to the Windows version of Perl that would make it incompatible with non-Windows versions.
"It's not said explicitly that this will be an all-snafu'd up implementation of Perl, but with [Microsoft] involved you can lay your bets pretty safely that it will be," wrote one skeptic.
Hardt, though, said new additions to Perl will be released as open source. "What Microsoft is saying is, 'Perl is an important technology. We want to make sure it runs well on our platform,'" Hardt said. "Are they controlling it? No."
There will be one element of the ActiveState work that isn't open source, though, namely the incorporation of Microsoft's new installation routine for Windows NT, called Microsoft Install, or MSI. "We'll be licensing it and selling it to people," he said. That installation method will join ActiveState's current installation software, InstallShield.
Microsoft has run into trouble with the open source community before, most notably with its Halloween documents, which said the way to beat open-source programs was through the "embrace and extend" approach of undermining the standard technologies by adopting them and then modifying them.
"OSS [open source software] projects have been able to gain a foothold in many server applications because of the wide utility of highly commoditized, simple protocols. By extending these protocols and developing new protocols, we can deny OSS projects entry into the market," wrote Microsoft engineer Vinod Valloppillil in the document, which was leaked to open-source advocate Eric Raymond.
Probably the most notable example of open-source software today is Linux, a Unix-like operating system that many see as competing with Microsoft Windows as well as Unix.
But patents, nondisclosure agreements, and other intellectual property concerns are an unavoidable element of the computer realm. Even Linux founder Linus Torvalds, who works for the secretive Transmeta Corporation, has said he sees a place for both open and proprietary efforts.
Perl, developed by Larry Wall, is popularly described as "the duct tape of the Internet," because many sophisticated Web sites rely on the language for tasks such as fetching information from databases. "Microsoft uses it very heavily internally," Hardt added.
If Perl is the Internet's duct tape, "Our business is to provide the tape dispenser," said Hardt.
Wall pursued Perl development for a time at O'Reilly and Associates, a publisher, open source advocate, and minority shareholder in ActiveState.
"Perl obviously is very important to us. That's what our business is based around," Hardt said.
While Perl is available on many different computers and operating systems, including Windows NT, Unix, and Linux, it's not necessarily equal on all systems.
"On the Windows platform, we don't have nearly the same number of developers as for Unix. A lot of this work wasn't getting done," Hardt said. "People moving [Perl] scripts back and forth have found that to be a big barrier," he said.
For example, something that's present in Unix but missing on the Windows version is the "fork" feature, which lets a program make a copy of itself, Hardt said, a very useful ability for programs that use the network.
ActiveState will add the fork function into Perl for Windows and release the code to the open source community, he said.
Another development effort will focus on improving the international language support in Perl on Windows by sprucing up its handling of Unicode, a technology that lets computers use alphabets with hundreds of characters, common in Asia. Windows NT has Unicode functions built in for activities such as working with files, but at present Perl isn't able to send or receive Unicode information when talking to Windows NT, Hardt said.
The Unicode work, though specific to Perl on Windows NT, also will be released as open source, he said.