B
BGB
BGB said:of course, C# is currently up there as well, so it is mostly a battle
between C, C++, Java, and C# for the title of "most widely used
language...".
That's a meaningless title unless you define it. Used by the most
programmers? Used by the most "applications" (however that would be
defined)? Most SLOC or function points or some other dubious code
metric? Ever? In the last year, month, week?
TIOBE's rankings are suspect, as is their methodology, but at least
they have a method - they're not just pulling a list out of their
collective ass.
FYI, the most recent short-term TIOBE rankings are Java, C, C++, C#,
PHP, Objective-C, Python, "(Visual) Basic" (a dubious entry), Perl,
and Ruby, in that order.[1] That's for May 2011. (RPG has risen to
#20, by the way, from #25 last year. Time for everyone to refresh
those RPG skills!)
Their long-term data shows Java and C securely holding the top two
spots for the past decade. C++ briefly beat C for the #2 spot a couple
of times, but it didn't last.
But as I noted, the TIOBE rankings are suspect. They're based on
things like advertised positions and classes, so they mostly measure
demand or perceived demand in various markets.
but, alas, these measures are probably adequate...
if I were to ass-pull a list, mostly from most common personally
encountered code, it would likely look more like:
C
C++
Java
Perl
Python
Bash / Shell-Scripts
....
And simplistic interpretations of their data are likely to be
misleading. For example, they rank COBOL at #37, well below, say, Logo
(#24). (Time to brush up on those Logo skills!) But there are a few
billion lines of COBOL application source code still under
maintenance. They're rarely touched (indeed, businesses are
tremendously wary of touching them), because they encode business
rules. But they still exist and the programs compiled from them are
still used. Does that mean COBOL is under-ranked? Only if you
interpret the TIOBE rankings to mean something other than what they mean.
my main interpretation is more like:
top of the list means top of the list (getting things to the top of a
given list is often regarded as a goal in itself, like the "yay, we're
number one, in your face, ..." sense);
top of the list also means generally most popular languages;
languages near the top are more likely to be more "acceptable" to people
than those lower on the list;
....
Similarly, we see TIOBE ranks Alice (a language in the ML family) at
#35, and PL/I at #42. Alice is free, and comes with a free IDE. The
major PL/I implementations - IBM's and ours - are expensive. But we
still sell a goodly number of PL/I licenses, and all evidence suggests
IBM does too. We don't see PL/I customers rushing to switch to Alice.
Or even, say, C, which is more like PL/I and is the #2 language.
actually... I had thought they meant Alice in the sense of the CMU+EA
thinggy, which involves drag-and-drop to control 3D characters and was
meant as a teaching tool... either way, it would be a surprise if it
gained a whole lot of status... even more so if people were actually
trying to write serious "software" with these drag-and-drop
character-control commands...
it could make more sense as a storyboarding/pre-vis tool though...
but, yeah, if it is some other real programming language, that makes a
little more sense...