Why are there so many programming languages?

Source: Internet
Author: User

write in front of the words: occasionally hear someone for which programming language is superior or inferior argument, and sometimes hear someone to choose which programming language to be confused. Some people may tell us: "Do not go to the door of which programming language, have that time than to learn the language." "But still feel that this kind of reply can not let a person's inner peace, in order to be able to from the bottom of my heart to struggle with these problems, I think we should understand a basic question: why there are so many programming languages?" Just recently see Coursera inside Stanford University professor Alex Aiken Lecture on the compilers a question: the Economy of programming Language, The view inside is still very enlightening.

= = = Text starts =====

Different CPUs have different instruction sets, which are binary 0 and 1; Later with assembly language, it can be considered as a mnemonic representation of binary instructions; Later, with the Advanced programming language, they have been changed back to assembly or machine language by the compiler, and then another high-level programming language was born, Why are there so many programming languages ?

  A simple explanation can be: different areas have different needs!

For the field of science and engineering computing, to deal with the calculation of data, such as matrix calculation, so Fortran language, it is very good to adapt to this point, for the data need to be able to query, modify and other operations, the SQL language is a good language, for some of the underlying operations, C and C + + may be well able to adapt to this point ...

  So in order to adapt to different application scenarios, one programming language was born.

But there's another question: Why not reinvent a language, make it all-encompassing, and keep creating new programming languages?

  A good explanation could be that the cost of creating a new programming language is sometimes lower than the cost of improving a programming language! The cost here has a basic assumption: Programmer training is the dominant costs for a programming language.

(1) to create a programming language, sometimes just need a few people to write the compiler, and then consider the other requirements can be; Once a new programming language is born, the programming language is a new language for programmers, the language syntax, APIs and so on are all new, programmers will not have any other burden ;

(2) If a programming language is modified, it is necessary for programmers who have used the language to re-adapt to new improvements, and sometimes to adapt to new scenarios, the possible changes are enormous. You can imagine that if you update C + + to adapt to Web page development, you will need to improve a lot, as well as a major update to a language, but it can also have other effects.

(3) It also comes to the conclusion that those widely used programming languages may tend to change less. (If a programming language keeps changing, why do you have to learn it?) We also understand the phenomenon that, for a country as big as China, the impact of any policy change may be enormous.

So instead of making improvements to an existing programming language, it's better to reinvent a programming language to be fresh .

The development of a new programming language, for users to learn faster and better, often also imitate some of the characteristics of existing languages, so we see the programming language, often look like.

  Once we understand why there are so many programming languages, we will not struggle with so many programming language choices, so that we can focus on different application scenarios, choose the right programming language, just start learning different programming languages, it may be a bit confusing, but learning more than the chaotic period, it is clear.

More important point: there is time to learn the basics of things, such as compiling principles, assembly language, computer systems, algorithms and other knowledge, these things seem useless when learning, once learning to understand, back to learn new things, will find that they learn fast.

  The road long its repair far XI, I will go up and down and quest!

Why are there so many programming languages?

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.