http://memojo.com/~sgala/blog/51.atom ../images/favicon.ico Boxes and Glue Santiago Gala and his Symbols Santiago Gala sgala@apache.org http://memojo.com/~sgala/blog/ 2010-07-25T18:31:28+02:00 tag:memojo.com,2004:51 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.

2008-02-05T19:06:59+01:00
tag:memojo.com,2004:51-1202234894 kourem@gmail.com adsl88-180.kln.forthnet.gr form Nikos Kouremenos Politheistic Babel Very nicely written and interesting post 2008-02-05T20:08:14+01:00 tag:memojo.com,2004:51-1202571228 http://robilad.livejournal.com/28407.html excerpt burek for breakfast 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,... 2008-02-09T17:33:48+01:00