If you've seen Star Wars or Jurassic Park, conducted a search on Yahoo or found a companion on Friendster, then you've already benefited from the P-Language phenomenon.
Popular enterprise scripting languages such as Hypertext Preprocessor (PHP), Perl and Python have empowered programmers for years in the areas of Web development, systems administration and integration tasks. But while the P-Languages can do almost anything that G-Languages (general-purpose languages) do, such as Java, C# and C++, they are relatively immature in their support for Web services, according to a report from the Midvale, Utah-based Burton Group.
PHP, which is used for dynamically generating Hypertext Markup Language Web pages, has gained tremendous traction as one of the primary languages for Web development. According to a Netcraft Ltd. survey conducted in December 2004, programmers use PHP to generate Web pages for one-third of all Internet Web sites and to power the presentation layers of high-traffic sites such as Yahoo!, Friendster.com and Freshmeat.org.
While Perl is also used for Web development, its forte is in systems administration tasks -- supporting an organization's business applications and operating systems.
A major public power utility currently employs hundreds of Perl programs, totaling more than 100,000 lines of code, to manage the power grid for over a million customers, according to the Burton Group report.
Python, on the other hand, is typically used for application and Web development, systems administration and limited integration tasks.
Industrial Light & Magic, the special effects company created by producer George Lucas, used Python to weave together computer-generated images in movies such as the Star Wars prequels, Jurassic Park and Terminator 2, the Burton Group report said. ILM used Python to call libraries written in C and C++ and orchestrate the entire production system.
Although all of the P-Languages provide excellent support for processing text and HTTP requests, none them are on par with the G-Languages in terms of Web services support, the report said. P-Language frameworks for Web services, which are generally scarce or don't exist at all, lack support for the latest Web Services Interoperability Organization Basic profile standards.
"P-language support for Web services isn't at the same level that you see for Java, C# or the .NET platform," Richard Monson-Haefel said. He's an analyst at Burton Group as well as the author of the report, "The P-Languages: PHP, Perl, and Python for Enterprise Scripting." "The Java and C# communities are off building things like Web services security and other specifications. The P-Languages just haven't caught up in that regard yet."
However, of the three scripting languages, PHP is probably the most likely to end up having more robust support for Web services, Monson-Haefel said.
PHP 5, which is the most current stable release of the PHP language, improves support for XML processing and Web services. Simple Object Access Protocol libraries, which were previously available only through third-party add-ons, are now natively available on the PHP platform.
Cupertino, Calif.-based Zend Technologies Ltd., which is the primary contributor to the development of the PHP interpreter and offers tools and services for the open-source edition of PHP, allied with IBM in February to offer a new bundle called Zend Core for IBM. Under the partnership, the two companies will devote resources to make PHP work better with Web services and corporate databases such as IBM's Cloudscape.
"If Web services become as ubiquitous as people claim they will, it seems natural that PHP will become a mainline tool for developing service-oriented architectures (SOAs), at least on the implementation end," Monson-Haefel said. "SOAs give you the freedom to implement your Web services with any technology you like. If you want to use scripting languages (such as PHP, Pearl, Python) to implement your Web services, no one's going to know that you're using them as opposed to .NET or J2EE."
As the P-Languages work quietly behind the scenes to bring Jurassic Park to life and maintain our electric power grids, the vision is that they will one day also transparently underlie our Web services and service-oriented applications. But for this to happen, tools and frameworks will need to catch up.