Opinion: Scripting languages your developers wish you'd let them use

Try these; you might like them

Several weeks ago, Lynn Greiner's article on the state of the scripting universe was slashdotted. Several people raised their eyebrows at the (to them) obvious omissions, since the article covered only PHP, Perl, Python, Ruby, Tcl and JavaScript. As I wrote at the time, Lynn chose those languages because hers was a follow-up to an article from three years back. Plus, most IT managers are familiar with at least one of those well-known scripting languages, even if they haven't personally written a line of code in one of them.

However, while we've covered several in depth, those five dynamic languages are not the only ones developers use. Since every programming language is a tool suited to solve a particular problem, it behooves each IT shop to use the best tool for the job. So in this article, I share a few up-and-coming scripting languages that really ought to be on your company's radar, with a few passionate arguments from developers who have adopted them.

Scala

Scala is particularly attractive to Java developers. Per its Web site: "Scala... is both object-oriented (think inheritance, methods ...) and functional (think closures). It blends a number of modern language features, while maintaining close compatibility with Java."

Dean Wampler, senior consultant at Object Mentor, is currently co-writing a book on Scala for O'Reilly. "Scala is the best language I have seen that meets the 'one size fits all' goal," he says. "Scala fixes problems with Java, like verbosity and limitations in Java's support for object-oriented programming. In addition, Scala supports functional programming -- an approach that has been around for a long time in academic computer science but is now proving to be very useful for writing robust concurrent software. Concurrency is very important for scaling up software at large Web sites and enterprises."

For David Ritchie MacIver, a developer at Trampoline Systems, Scala's primary benefit is that it lets him avoid Java. "I can match [Java] in terms of library support, performance and ease of deployment," he says. Many Java tools carry over to Scala, too. MacIver says his company is adopting Scala for some of its visualization software as the software is updated, and reducing its use of Java and Ruby.

MacIver doesn't recommend Scala for everything, though. "People will push Scala for concurrency advantages. Please don't succumb to the temptation. It doesn't particularly have any -- any more than Java does, that is."

Groovy

Another language gaining ground in the Java community is Groovy. According to its Web site, Groovy is an agile and dynamic language for the Java Virtual Machine (JVM). It builds on Java's strengths but has additional power features inspired by languages like Python, Ruby and Smalltalk.

1 2 3 4 5 Page 1
Page 1 of 5
  
Shop Tech Products at Amazon