Recently, I started writing articles about learning Python and before formally studying the Python language, I would like to provide some background information. The previous article discussed the brief history of computer development, and this article will introduce how many programming languages exist up to now.
As mentioned in the previous article, programming languages are tools for humans to instruct computers, similar to how people communicate with each other in society. As Chinese people, we can communicate in Chinese. However, if the other party is a foreigner, we need to choose a language that both parties can understand, such as English, French, or German.
There are over 7000 languages for human communication, but most are minority languages. Only about 200 of them have more than 1 million speakers. In international conference settings, fewer than 10 languages are widely used.
Programming languages are also diverse, ranging from machine code to AI modeling, with over 2500 officially registered. However, similar to human languages, only about 10 of these programming languages are commonly used. They can be roughly divided into three levels:
1. Low-level languages
– Machine language: consists entirely of 0/1, which the CPU understands directly, but humans cannot comprehend.
– Assembly language: uses English symbols to replace 0/1, with each instruction corresponding to a hardware action, making it feel like memorizing a codebook.
2. High-level languages
Approaching everyday English, easy to learn, read, and transfer. The mainstream ones include:
C, C++, Java, Python, JavaScript, C, Go, Rust, Swift, Kotlin……
3. Specialized scripting languages
SQL (Database), HTML/XML (Markup), Python/Shell (Scripting), etc., can be used on the fly without writing complete programs to instruct the computer.
Unlike human languages, even minority languages are hard to classify as low-level languages. We can only say that minority languages have fewer speakers.
Programming languages are different; low-level languages refer to those closest to what computers can understand. Modern computers operate on electricity, which has only 2 states: on and off. Therefore, the binary system of 1 and 0 is widely used in computing.
The previous article mentioned that the earliest computers were the “Difference Engine” and “Analytical Engine.” At that time, programming languages were not mature, and programming was done using punched cards, which was the closest method to machine language. However, the closer it is to machine language, the more cumbersome it becomes, making it nearly impossible to popularize.
Later, assembly language was developed, which, although still a low-level language, at least allows some operation instructions to be represented with letters.
High-level languages solve the problem of cumbersome usage. For example, the classic C language allows for writing complex programs in a manner similar to English.
So, since there is the C language, why was the Python language invented? As mentioned in previous articles, the invention of all new things in this world is to meet the needs of social development.
Although the C language is a high-level language, it is still too specialized for the average person. For example, memory usage requires targeted memory management. In contrast, the Python language is like a layer of abstraction on top of the C language, making it very user-friendly. For instance, when writing a Python program, there is no need to write memory management code; you just use it as is. You don’t have to worry about anything that interacts with the underlying operating system.
In today’s world, the rapid development of big data and artificial intelligence has also promoted the evolution of programming languages. Below is a summary of some classic programming languages and their inventors:
– Machine language: Collective wisdom of unnamed engineers
– Assembly language: 1940s, John von Neumann’s team (USA)
– C language: 1972, Dennis Ritchie (USA)
– C++: 1983, Bjarne Stroustrup (Denmark)
– Java: 1995, James Gosling (Canada)
– Python: 1991, Guido van Rossum (Netherlands)
– JavaScript: 1995, Brendan Eich (USA)
– Go: 2009, Robert Griesemer, Ken Thompson, Rob Pike (USA)
They translated the world into numbers with code and handed down a toolbox to future generations—— while paying tribute to these predecessors, I sincerely hope that we Chinese can invent and create a programming language. After all, our country’s computer industry is developing at a leading pace globally.
The development of programming languages is aimed at making human effort increasingly effortless: from memorizing 0/1, to writing print(“Hello”), allowing the computer to run. Choose the right level, write the right code, and you can make the machine do anything legal—— this is the value of programming languages.
#python