TIOBE Says C Is Declining!
Written by Harry Fairhead   
Wednesday, 11 September 2024

The TIOBE index is always fun and often provides a talking point. This month sees C falling by one place and Java going up by one. What can this mean?

The honest answer is probably nothing much, but C is a very special language among today's most used. It is low-level and uses a very light abstraction of the machine it runs on to let you code efficiently without being totally machine-dependent. You could also say that the price of this power is extreme danger, but then - what do you expect?

Why might C have fallen so low?

TiobeC

Well there has been a long anti-C movement. Often led by programmers who believe C should evolve into something more sophisticated - become a modern language like Java or C++ or C#. Well, it is C++ and Java that have risen higher in the rankings over the years so perhaps these are the standards that C should aspire to. Of course, this is forgetting the fact that C gifted both languages its for loop, not to mention the semicolon. Both Java and C++ are deeply flawed in ways that C is not.

Java is verbose and repetitive - something you only realize when you try Kotlin and discover how much less you are writing.

C++, well if C is dangerous, C++ is a psychopath. But as it is object-oriented it allows you to use nice object-oriented libraries and these are shiny things that attract the programmer like glitter to a five-year old. It has to be said that objects are best when you are consuming them - not so good when it is down to you to implement them.

Then there is the issue of which C++ are we talking about. There is a good core of C++ that you can use to write good programs, but it is surrounded by an overgrowth of additions, amendments and alternatives that reflect its committee-like governance. It is the modern camel designed by a committee with vision, but each member has their own orthogonal vision of what C++ needs next.

In addition there is the Rust issue. C isn't safe because it lets you do what you want. Rust is safe because you have to play by its rules and if you don't want to or can't then you have to move outside to an unsafe place. This still isn't so bad as it at least highlights sections of code that you consider as being dangerous and this might focus your mind on the danger in hand. Conversely it isn't so good either but this is the price you pay if you want to program freely - freedom = dangerous code.

Don't misunderstand - Rust is a good thing, but it isn't the 100% solution. If you want to write low-level then you have to accept that the buck stops with you - there is a reason that the "Halt and catch fire" command is low-level. If you want to pass the buck then you need to use a higher-level language - one that abstracts away from the underlying machine. Python is fine for this, even though many purists claim that it isn't well designed. I would agree Python is not the language that language theoreticians dream of, but it has many, many practical advantages. A Python program is short and does a lot in a few lines without being obscure. You can't ask for much more of a high-level language - unless you are a language theoretician. 

So C has taken a fall, but for a language that gets you close to the machine there is none better. Perhaps there should be, but personally I  expect C to be quickly restored to the top three. It occupies a major niche which is more than you can say for the upstarts.

tiobelist

More Information

Programming language C at lowest position ever

Related Articles

Python Strengthens Its Dominance Of TIOBE Index

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


Fei-Fei Li On Spatial Intelligence As The Next Frontier In AI
11/07/2025

Last month in front of an enthusiastic audience at Y Combinator, Fei-Fei Li, often called the godmother of AI, talked to Diana Hu about spatial intelligence and why she considers it the next crit [ ... ]



Mitch Kapor Gains MSc 45 Years After Dropping Out of MIT
04/07/2025

Mitch Kapor, founder of Lotus Development Corporation and designer of Lotus 1-2-3, the "killer application" which made the personal computer ubiquitous in the business world in the 1980s has completed [ ... ]


More News

pico book

 

Comments




or email your comment to: comments@i-programmer.info

 

 

 

Last Updated ( Wednesday, 11 September 2024 )