History, Background, and the Future.
As Wikipedia defines it, "a programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output. Programming languages generally consist of instructions for a computer. Programming languages can be used to create programs that implement specific algorithms." In other words, programming languages help you create, effective ways to understand and make sense of instructions, requirements, and much more.
Modern programming languages derive from ancient programmable machines, and goes back as far as the 9th century during the Islamic Golden Age. The Musa Brothers from Baghdad created books on automatic machines and mechanical devices. The earliest known programmable machine that preceded the invention of the digital computers was the automatic flute player that was in the Musa Brothers' books.
Following the 9th century, in the 17th century, musical instruments such as Jacquard looms and player pianos were programmed. Of all programming languages, even if a lot differ, one characteristic that remains similar is the imperative form (sequence of operations to perform) or it's declarative form (desired result is specified, but not defined into how to go about achieving it).
When computers were first developed, they were developed without the help of a programming language, by writing programs in binary or decimal form, and they were read in punched cards or magnetic tape, toggled in on switched on a computer. These languages were also known as absolute machine languages.
2GL, or also known as assembly languages, were instructions set architecture based programs for the specific computer, which made it user friendly for users in reading and programmers lives got much easier as there were less error-prone address calculations.
3GL, or also known as high-level programming languages, were written in the 1950's, written by Konrad Zuse. The language was known as Plankalkul. John Mauchly's Short Code proposed in 1949 was developed for an electronic computer. One disadvantage that it followed was having to translate the code into machine code every time it ran, which made it much slower to perform and utilize.
It is no secret that going forward in the future, Artificial Intelligence technologies will dominate the world's capacity. Here is an interesting read if you want to understand more what an Artificial Intelligence is. The future of programming will eventually integreate of robotics and automation, that will revolutionize business needs, transofrming from tedeious manual processes to automating systems.
According to the Robotiq Blog, Python, C++, and JAVA are dominant languages that will play a key role in creation of Al technologies (robotics including).
C++:This is a good starting point for people getting into robotics, as most common hardware libraries use this language.
PYTHON: This is briefly used for ROS (Robotic Operating System), and it is quite easy to learn and use, as well as easy to implement basic functionalities. Another advantage of using Python for robotics is that it allows binding with C++ code, which means you can perform and measure heavy duty functions by avoiding performance loss.