Not a computer scrub, just curious.
>Why is there like a billion coding languages?
I understand that HTML and python are used for different things, but why so many "c"s and other random shit? Why cant you just have one fast language?
>Also, considering mechanical/software/electrical engineering, which language should I learn to code things that will move? Which language will high-paying jobs require?
>>62029545
>" Curious Nerdfag"
>Not a computer scrub, just curious.
>I understand that HTML and python are used for different things
gtfo you newfag
>>62029582
>Hmmm, I like this language but I have to use a different language for [Enter thing that current language isn't good at] I fuess I'll try to find one I li- wait a second
"Nerdfag" asking such stupid questions? I think you're just a regular fag.
>>62029545
>which language should I learn to code things that will move? Which language will high-paying jobs require?
Classic
>>62029662
Correction: Future nerdfag. Currently dont have the time to fully dive into code but I want to in the future.
The same reason there are billion Linux distributions and billion cryptocurrencies.
Everyone wants THEIR shit to be the hot shit.
if the only remaining language was oop i'd never touch a computer again
>>62030419
>the only language remaining is JavaScript
>with litteraly quadrillions of library
There are multiple reasons, but this is what I consider to be the main one:
In computer science, we have a lot of trade offs. For example, should I write an iterative or a recursive function? Should I use an array or a linked list? Both options would be functional, but both have their advantages and disadvantages which may or may not vary in importance depending on what you're trying to accomplish.
In some cases an array will be more suitable (generally anywhere where read and overwrite speed is more important than insertion speed), and in some cases a linked list will be more suitable (generally wherever insertion speed is more important).
Sometimes the tradeoff has nothing to do with performance, but relates to how easy/quick it is to implement as a programmer (am I going to spend a week perfecting a piece of code that runs once every time the program runs, or would I prefer to spend that time perfecting a piece of code that runs hundreds of times a second?).
We also make these trade-offs in languages.
Some languages are easier to use at the expense of being less efficient. Some languages are better suited for running on microcontrollers. Some languages are better suited for being embedded in another program - often written in yet another language with different trade-offs.
But why so many? Why can't we just have "the fast language" and "the easy language?"
Because peoples ideas of "fast" and "easy" vary greatly. Do you want it to be "easy" for someone who has never programmed before? Maybe you want Scratch. Do you want it to be easy for anyone willing to put in the time to learn? Maybe you want Python.
Some people insist everything should be OOP. Some insist everything should be functional. Some think that a language should cater to all paradigms so that you can use whichever paradigm is more suitable at the time.
>>62029545
New programming languages typically implement new computer science research to deal with problems other languages had trouble with.
The current big problem is concurrency, so stuff like Elixir and Clojure attempt to solve this.
Clojure makes it possible to easily work on the same data concurrently (STM) without fucking mangling it the way most languages do. No race conditions or threading nightmares.
Other new languages are designed to be suited for one specific task.
Julia was invented because most fast languages are too low-level for academia.
Processing was created so artists can do generative artwork without having a Java-induced aneurysm.
>can't greentext
No, you're just a newfag.