Moores law helps
Moores Law Helps So why the rush toward dynamic languages? Lam said he believes CPU speed and Moores Law are helping to boost dynamic languages, which have been characterized as slow-performing. But advances in processor speed make this a nonissue, he said."I think that dynamic languages have always enjoyed a strong place in the developer toolbox, and they will continue to," said de Icaza, who is also founder of the Mono project, which aims to create an open-source implementation of .Net. "Perl, Ruby, Python, Visual Basic and even TCL [Tool Command Language] in its day have always had a strong group of followers," he said. Meanwhile, Anders Hejlsberg, a Microsoft software architect in Redmond, Wash., and father of C#, said the days are numbered for imperative programming, which instructs the computer to make room for more declarative programming, which describes what something is like rather than how to create it. This style of programming is especially effective in helping developers take advantage of multicore CPUs, Hejlsberg said. Hejlsberg said Microsoft has an internal project known as PLinq, which is a parallel implementation of the companys LINQ (Language Integrated Query) technology. LINQ provides integrated querying for objects, databases and XML data. However, with PLinq, "you write the code the same way, but we arrange for it to run on multiple CPUs," Hejlsberg said. "So the queries get split up and run on multiple CPUs." Although dynamic languages have momentum, Hejlsberg said they lack scale. "Dynamic typing only scales so far," he said. "When you get into really big projects, its problematic." For his part, Lam said its too early to know how dynamic languages will scale. "We just dont have enough experience in building large systems on these things," he said. Cedric Beust, an engineer at Google, in Mountain View, Calif., said, "Dynamic languages suffer from some inherent limitations that make them inadequate for large software. So I definitely see them as gaining momentum, but they will never displace enterprise languages such as Java, C# or C++. Some of their features are slowly percolating into enterprise languages, though, which is a good thing." Sridhar Iyengar, an IBM distinguished engineer, in Durham, N.C., offered more questions regarding large-scale deployment of applications built with dynamic languages. "One of the challenges of dynamic languages is how do you test it, how do you debug it and how do you make sure that your application is secure," Iyengar said. "All of this is tough to do with static languages. Its incredibly harder in dynamic languages." Check out eWEEK.coms for the latest news, reviews and analysis in programming environments and developer tools.
Miguel de Icaza, a Novell vice president in Boston, said faster computers with faster chips and more memory are making dynamic languages suitable for tasks that previously were out of their scope.