Dynamic languages are the future
Tue Aug 29 04:54:16 CEST 2006
A four page article which claims the next generation of programming will
be with "dynamic languages" like Ruby, Python, Perl, .NET and others.
The appeal of dynamic languages is clear: As systems continue to grow
more complex, developers seek simpler ways to get their work done.
And simpler code tends to attract developers. "I think that dynamic
languages are really the next big thing," said John Lam, a principal
consultant and partner at Toronto-based ObjectSharp Consulting.
Meanwhile, Sun also is making changes to the JVM, so, in the future, it
can bring over new languages, Hamilton said.
Gilad Bracha, a computational theologist at Sun, said the company is
broadening its support for dynamic languages not only to satisfy user
demand but also to help broaden the overall community of developers who
use the Java platform.
Bracha noted that Sun currently offers support for some dynamic
languages on the Java platform, including Jython, Kawa, Groovy and
"We're solidly committed" to providing enhanced support for dynamic
languages by adding a bytecode called invokedynamic and adding
hot-swapping support, Bracha said. Hot swapping is the ability to modify
code on the fly. Both efforts are part of Java Specification Request
292, the goal of which is to allow scripting languages to be implemented
natively on the JVM, Bracha 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.
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, it's problematic."
For his part, Lam said it's too early to know how dynamic languages will
scale. "We just don't 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. It's incredibly harder in dynamic languages."
More information about the erlang-questions