“Programming Languages”. This has shaped the world and is responsible for the technically advanced and smart world we are in right now. People generally associate programming languages with just a few common names like C, C++, java, and nowadays python. But today we are gonna dive deep into this term “Programming Languages” and study it from a different perspective.
Now Programming Languages if to be explained in lay man’s terms are basically a way we establish communication between humans and the computer. Let’s go back a bit and see how it at all originated.
Table of Contents
How Programming Languages Originated?
Back in the days when initially computers were established, they were programmed by modifying their circuitry or setting loads of physical controls. That was quite obvious as in earlier days computers occupied huge spaces and were far from the compact forms we see in 2020.
Now later on programs could be written in machine language, where the instructions were provided to the hardware in numeric forms and it was executed by it.
The programs in decimal or binary form were read in from magnetic tapes or punched cards or paper tape etc. This was termed as the first-generation programming language.
Post the 1st generation of programming languages the 2nd generation was developed, which were still very much tied to interaction set architecture of the specific computer. But now the process was a little bit easier for the programmer and improved efficiency.
In the1950s the first high-level programming language was developed and one of the first of this kind was “Short Code” by John Mauchly. This was way ahead of machine codes and shortcode statements had mathematical expressions that were easily understandable. But still this code required to be translated to machine code, hence the process was much slower.
The second autoencoder was developed in 1954 and as it was developed for a computer named “Mark 1” it was named “Mark 1 Autocode”. Later again in 1961 the EDSAC 2 Autocode was devised by D.F Hartley, and this time it was known for its object code optimization and source-language diagnostics which you might laugh at now, but were considered advanced at that time. A contemporary to this was also developed for the Atlas 1 machine and was named Atlas Autocode.
Now slowly this progress was rising and languages like FORTRAN and FLOW-MATIC were widely used as high-level general-purpose programming languages which were had a functional implementation rather than just a design on paper.
Development and research over the years gave rise to various languages like
APL: Introduced Array Programming
ALGOL: refined Structured procedural programming.
Lisp: The first dynamically type language
Simula: The first object-oriented programming language
After these the most famous language C was developed between 1969 and 1973 and was aimed as a system programming language for the UNIX operating system.
Post C language, C++ was established in the 1980s and it was a combination of Object-Oriented and Systems Programming.
In the 1990s Internet came into play and created various new opportunities for the development of new programming languages.
This is the time when Java came into use for server-side programming and practice was developed of “Write Once and Run Everywhere”
All the developments were mainly based on the syntax from the C programming family.
Now this was the basic layout and like this all the languages we see right now were developed one after the other with some modified syntax and for specific uses.
Programming Languages of the Modern ERA
According to Wikipedia there are almost 700 programming languages in the world so it is not practically impossible to cover each one of the languages.
Now the popular ones we see in 2020 are
Now apart from these, newer languages are developed like
Each of these programming languages are developed over the years aimed at solving various issues.
Evolution of Programming Languages over the Years
If we see the trend of these languages the main aim to reduce the efforts involved in communicating with the computer.
Earlier in C or even in JAVA the codes had some fixed protocols to be maintained like writing a “;” after every statement and stuff.
But in the modern era of programming languages we see that in languages like Kotlin and Python, we don’t need to maintain these protocols and practically the codes are much easier to write and have less complicated syntax, though the logic remains.
Another point where modern programming languages excel is regarding the size of the program for a specific task. The codes are much compact and with pre-installed libraries in use the programmer has a much easier time learning and implementing the codes in these languages.
In 2020 languages like python can be used for multiple purposes like machine learning to app development and even in website development. Google’s Kotlin is focussed mainly on app development and Go is uses for projects involving networks and cloud services.
So you might be asking that
Which language you should focus on in 2020?
Well it depends upon what you want to do with that.
Suppose you are planning to take up AI and machine learning in the future so Python is a great language for you. Similarly if you have an interest in app /software development you can learn Kotlin or Swift or java depending upon the platform you choose to develop for.
In a general perspective, C is the mother of all languages and one needs to learn C in order to strengthen the basics, and the benefit is that if one gets hold of the logics used in different programs the syntax part is easy to learn and implement.
Role of IDE’s in 2020
Now let’s talk about IDE’s which are the software we use to write the code and run our program.
Earlier or even now also people tend to use the terminal in Mac or Ubuntu or Linux or the command prompt in Windows to write and execute basic codes in C.
But when we move to advanced coding we generally require a smarter interface for the testing and ease in writing of our code. This is where IDE’s come into play.
They are basically the software that helps you write the code easily, they have inbuilt text editors and compilers and you can run and test your code, import libraries or install libraries directly.
Modern IDE’s have got features like autocomplete and they are smart enough to detect the syntax errors in your code making the whole process of coding a lot faster.
Even Online compilers are available for testing or running your basic codes just with the help of an internet connection and a browser on any device.
Future of Programming Languages
Well looking at the general trend of how programming languages have developed or evolved over the years, it is quite obvious that in future programming languages will be much more interactive and easy to learn and also they will be more programmer-friendly. An individual needs to keep himself updated all the time because things will be changing rapidly and if you don’t believe me just think of this. Earlier we had computers which occupied large rooms and now they can fit in our palms, similarly, we had to work hours to do a basic calculation on a computer and now they are smart enough to understand our voice commands. Behind every success in this field ranging from Artificial Intelligence to Machine Learning, Programming Languages, and programming, in general, have laid the foundation slowly narrowing the gap of communication between a human and a computer.