Free Newsletters
Technology & Business Daily

InfoWorld
Log-in | Register

The best open source programming language

Is Perl, PHP, Python, or Ruby best? Do Java and JavaScript count?


When we started working on the Bossies, we divided the broad Application Development group into many subcategories, including Language. It seemed like a good idea at the time.

[See Bossie winner slideshows: Applications | Networking | Platforms and Middleware | Security | Software development | Storage ]

Then we wondered whether it was fair to compare system-level programming languages with scripting languages. We went on to wonder whether various individual languages qualified as open source. It's clear that Perl, PHP, Python, Ruby, and Tk/Tcl are open source languages; it's not so clear whether Java and JavaScript are. Is it enough for a subset of a language to have an open source repository and an ECMA (European Computer Manufacturers Association) or ISO standard, or should we consider only languages that are completely open source and have community-driven development cycles?

Finally, we realized that there probably is no such thing as a "best" language, be it a natural language or a computer language. The most we could do would be to pick best languages for specific applications, and even that would be difficult. It left us to identify languages that have become widely supported and perhaps acknowledge languages that have found a strong niche.

In that spirit, let us acknowledge the vibrancy of the growing Ruby community, especially as applied to the Web via Ruby on Rails. Ruby itself is an elegant object-oriented language with support for sophisticated programming constructs, including closures. Further, Ruby has broken out in a big way this year, with new versions for Java (JRuby) and Microsoft's Dynamic Language Runtime (IronRuby). Unless these variants begin to introduce language differences, these dual ports promise to make Ruby the new widely accepted scripting language.

Let us also acknowledge that JavaScript/ECMAScript is the de facto standard language for programming Web clients. While alternatives are beginning to emerge, JavaScript is still the primary language for creating interactive client-side user interfaces for Web applications, and it's one of the essential pillars of AJAX (Asynchronous JavaScript and XML).

Is JavaScript pure open source? If you stick to the ECMAScript subset, absolutely. In real life, however, client-side Web applications usually need to use the extensions to JavaScript and the DOM of individual browsers, whether the browsers are open source or proprietary. Many open source implementations of JavaScript are available for pure scripting, such as Rhino. The richness and performance of the JVM make it an ideal platform for development of new languages, and features in Java 6 and the upcoming Java 7 make such languages even easier to implement. As a result, a new crop of innovative languages is coming up: Groovy, a high-level Java superset released in January; Scala, which combines features from several distinct programming philosophies; and of course JRuby.

This year saw the release of GPLv3, the latest version of one of the most important open source licenses. Its development has led to spirited debate and reexamined what it means for a project to be open source. Is Sun's slow release of Java source code or the availability of an unsanctioned open source implementation of .Net sufficient? Like many folks, we don't take an absolutist perspective. We use the tools that work, and we celebrate open source communities for creating so many useful languages and development tools — and for making them widely available at no cost.

List of Bossie categories | Best of open source in enterprise monitoring

Senior contributing editor Andrew Binstock contributed to this article.

Martin Heller is a contributing editor of the InfoWorld Test Center and writes the Strategic Developer blog.

Talkback:

commentPost a Comment

 

MOST COMMENTS

 
 





TAKE CONTROL OF YOUR CONTENT- LEVERAGE MICROSOFT SHAREPOINT
Microsoft Office SharePoint Server (MOSS) offers core content management designed for a broad user population. Attend this webcast to learn how to implement a strategy that allows for the coexistence of both MOSS and advanced ECM solution within the same IT environment. Sponsor: IBM

»  Click here to view this Webcast
  Zombie PCs Are Attacking Your LAN
A recent study showed that malware-infected zombie PCs are now a bigger threat to ISPs and Web infrastructure than DoS attacks. As this brand new IT Strategy Guide explains, an increased use of peer-to-peer techniques by the attackers has made it harder to fight back. Download now, compliments of Verio:

»  Click here to download now

- Special Advertising Partners -
WHITE PAPERS
 

» Technology White Papers Library

Technology White Papers by Topic

Technology White Papers E-mail Alert

Find out when the latest white paper is available:
 
 
INFOWORLD MARKETPLACE
 
» BUY A LINK NOW
 
 

Video

 
 
 

Podcasts

 
 
 

 

Columnists

 
 
 

Resource Center


Ads by techwords beta  [See your link here]
 




Sponsored Technology Links

 
 
 HOME  NEWS  BLOGS  PODCASTS  VIDEOS  TECHNOLOGIES  TEST CENTER  EVENTS  CAREERS   About | Advertise | Awards | RSS | Contact Us 

Copyright © 2008, Reprints, Permissions, Licensing, IDG Network, Privacy Policy, Terms of Service.
All Rights reserved. InfoWorld is a leading publisher of technology information and product reviews on topics including viruses,
phishing, worms, firewalls, security, servers, storage, networking, wireless, databases, and web services.

CIO :: ComputerWorld :: CSO :: Demo :: GamePro :: Games.net :: IDG Connect :: IDG World Expo
Industry Standard :: IT World :: JavaWorld :: LinuxWorld :: MacUser :: Macworld :: Network World :: PC World :: Playlist