Politheistic Babel
A chart in a recent entry from Dalibor Topic gave me a chance to check for diversity in computer languages. I have seen reasoning about the importance of diversity in computer languages in several places, but I remember notably Ben Hyde’s. I think his post about small gods (June 2003) is a good description of the process:
A scripting layer creates a huge range of large range of affordances for the the users (or more likely their agents the developers) to leverage the underlying data-type.
The chart is in ohloh, about monthly commits by language. It shows C/C++ going slowly down from a plateau at about 80% of Open Source, to the current 40%, while all other languages (java is second at a plateau around 20% since 2002) eat slowly into C’s share. I think the data is suspect, though. When Emacs Lisp is charted, the first years in the chart seem to reflect mostly the process of maturity in Open Source: from 1995 to 2000 we see how emacs (C+emacs list) gets from being all of the open source pool to just a small drop of it, as we can see in this view of “all-but-the-first”. Still, even discounting the 1995-2000 period, we see C/C++ loosing relevance, java as a stable second, php standing around 10% while python is in a close sprint for this third position, and other languages (perl, C# and ruby) in a pack after it. It looks like the web is a driving force of this tendency. I see it as a synergy of:
- information access, that enables faster propagation of languages
- distributed development, which eases polycultures, integrating via data
- free software (no license friction to have, say, ruby, perl, python, lua in the same box)
Another quote from Ben’s post, still relevant after five years:
People tend to get all fixated on the role of protocols (XML et. al.) as the tool for creating openness and interoperability across the Internet. That maybe a mistake. It maybe we should be a lot more conscience about the role of a diverse population of languages in this game. That a world of one language is, in time, a monotheistic world. That world, while possibly somewhat more efficient, encourages a monopoly.
Dead like me
Regularly, and almost predictably twice a year, the search for the next big thing to replace Java results in some other platform being hyped up as the Java killer. It used to be PHP, then C#, then Python, then C#, then Ruby, then C#, then Erlang,...Excerpt from burek for breakfast at

Very nicely written and interesting post
Posted by Nikos Kouremenos at