Assembler In The Top Ten Languages For July
Written by Mike James   
Wednesday, 13 July 2016

The TIOBE index is strange and hasn't got any absolute meaning, but changes are always interesting because they generally mean that something is going on. This month we have to explain why assembly has suddenly made it into the top ten.

Assembly language in the top ten languages in 2016 - doesn't seem credible does it?  

Of course we know that assembly isn't a single language. It is different for each machine - only the general approach stays the same. So really it is "assemblers" that have made it to the top ten. 

People have been musing on why assembly might be making its way back into the programming world after having been banished by high level languages since the late 1950s. The assumption is that it is connected with the IoT - the Internet of Things. There are so many small devices finding their way into gadgets that previously had no electronics inside, let alone anything a marketing man might want to call "intelligence".  The argument goes that these tiny devices have so little memory and power that they demand that programmers produce the most efficient programs possible and this means that they have to use assembler. 

This isn't an impossible scenario but there are a few difficulties with it. The first is that most IoT devices are not that small and puny. Devices such as the Raspberry Pi, Intel Edison and most Arduinos have enough processor power and memory to make high level languages adequate for the job. Even the tiny ESP266 is very happy being programmed in C. In fact most IoT devices are happy being programmed in C, which turns in nearly the same performance as handcrafted assembler - not quite but almost. To do much better than C you not only need handcrafted but obsessively polished assembler to do significantly better. 

So we have a mystery, made worse by the fact that not only do we have to explain a sudden entry into the top ten languages by assembler, but the fact that it has been on the increase since TIOBE included it in its measurements. 

tiobeasm

 

If you compare it to the curve for C it is clear that C has fallen recently - which, if the rise in assembler is driven by the IoT, is very strange. C is a much more important language to the IoT than assembler. As already suggested, you really only move to assembler on the rare occasions when C runs out of steam. Also notice that C++ shows no real trend since 2008.

What is it that is responsible for the increased activity on assembler? 

Is it that people are searching for information just because they are curious? If you try to find out about programming in assembler, almost any assembler, then you will discover that there is no single route to success. You are going to have to search some more and then some again. Perhaps it is something to do with the poor state of assembly language documentation that spurs on increasingly desperate searches for more information, even if few people are really actually doing anything as a result?

If you have any ideas what is going on make your suggestions in the comments. 

tiobeJuly2016

As to the rest of the languages there isn't too much to say.  

Top of the pile is Java, followed by C and C++. PHP continues its slide, despite jumping up a little. C# isn't looking too healthy and Swift still hasn't made it into the top 10 - it is currently at number 14 with Objective C just below at number 15. Outside of the top 20 it is interesting to note that Scratch is at number 21, which is probably something to do with the IoT and its popularity on the Raspberry Pi .

 

More Information

TIOBE Index

Related Articles

Java TIOBE Top Language 2015 

Tiobe Tweaks Algorithm To Eliminate Spikes 

Objective-C Overtakes C++ in TIOBE Index

IEEE Custom Ranks Programming Languages 

Top Languages 2015 - Stasis But For Go And Swift

JavaScript Is The Language Of 2014 

R Heads For Top Ten Languages

Which Languages Are In Demand?

Programming language (Infographic)

 

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, FacebookGoogle+ or Linkedin

 

Banner


.NET Community Toolkit Adds Partial Properties Support For MVVM
19/12/2024

Microsoft has announced version 8.4 of the .NET Community Toolkit, a collection of helpers and APIs that work for all .NET developers. The new version adds support for partial properties for the MVVM  [ ... ]



Greenplum's Cloudberry Fork Enters Apache Incubator
17/12/2024

Cloudberry is the open source equivalent of Greenplum.
Now it is fostered by the Apache Foundation as it acquires incubating status.


More News

 

espbook

 

Comments




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

 

Last Updated ( Wednesday, 13 July 2016 )