I want to ask a question about the programming language , why there is no single or one programming language for diffrent programming fields ?


One of the things people do best is design and invent things, including programming languages.

Also, consider that we've been doing programming for about 50 years now more or less. Compare that to, say mechanical engineering which we've been doing since the Great Wall of China... or earlier... and there is still no one best way to do mechanical engineering.

yes that's right , but why you think there is no one language , for example in this world we do not have one language , so why in programming we don't have one language for all fields ?

thx for reply

Maybe I do not understand your question, then. Because we don't share a native language, probably (though your English seems very good). Can you ask a different way or give an example?

ok , why we don't have one programming language for example c++ ,, why we don't using it for all fields instead of having other programming language , thx again

An "everything" tool in other fields is less useful for any particular task than a tool designed specifically for the task. I have a "multi tool" with pliers, screwdrivers, knife, cork screw, can opener etc. I use it a lot because it is there when I need it, but I do not use it when I have a serious task that makes it worth the time to get a specialized tool.

The same applies to languages: Some are more suited to one task, some to another. For instance, yesterday, I was cleaning up some files. I could have used C++ to write a little utility, or I could have used Python to do it and it would have taken much less time to get it right. Or I could have "done it by hand" (only about 50 files needed to be touched), but I did use a simple bash script: It was fast, easy (for me) and did the job. I'm also working on an interactive web site. I could use PHP, or Java, or C++, or ... but I have chosen Python because Django is a nice framework and has the power I need. C++ would compute faster, but people don't need "fast" for this kind of web page. PHP would be useful, but I don't know PHP so well as I know Python (and I don't much like it). C# would be good too, but this web site has to run on Linux, Java tools for web work tend to be very "heavy" and I'm not very fond of Java in any case, etc. We choose a language that meets the needs (or just preferences) of this task, then in a few days, for another task, we choose the language for that task.

Look again at how long people have been doing programming. We are still learning how to do it best. Languages are part of the learning curve: We are still learning (many times from the failures or missing features of existing languages) what works well in a language. I was a programmer when "object oriented" began to be popular (before that the main buzz was "structured programming" and many programmers used C). C++ arose from (and partly caused) that wave of OO popularity. The next big feature may be something to do with multi-processors or parallelism. When that happens, will you want to use an "old" language like C++ or the modern new language that makes your tasks very much easier, the programs faster and tighter, etc?

Ada attempted to be the language you are suggesting. You might find it interesting to read about it on Wikipedia or some other place.

Last point: I want to use Python and C++ for most of my programming. Would you say that people who prefer C# or Java should learn "my" language, or do I give up my preference to use "their" choice(s)?

Different languages suit different individuals as humans are unique. One person creates, and another develops the language further. The language changes and a new one is created. Humans will never stagnate, they will attempt to adapt the language/logic to meet their needs and strengths, hence new languages pop up all over the place. Languages do lend themselves to specific tasks, (perl for data mining in dna sequencing, vb for rapid business application development) and so on.

Thinking logically no one person speaks the same language as the other, we all have our own style and adaptation. Computational languages are organized logical representations of human thought process's thus they will differ always...