I was mostly clarifying what most people I've met believe is a "general-purpose language". I agree with your take on telling it like it is for the practical needs of the commercial programmers / users of a language.
And again, as a guy who loves Elixir, it absolutely is not suited for writing CLI tools. Many would say it can be easily done, the community even has a few really good libraries for it as well, but the BEAM VM startup time absolutely kills its utility for tooling for me.
And, as others also said, Erlang / Elixir simply excel at orchestrating a lot of runtime micro-agents, each with their own small responsibility. And they do this better than any other language I've seen. But, for one-offs / scripts / CLI tools, Golang / Rust are very difficult to dethrone. We could also add Zig / D / V and others, I suppose, but I am not familiar with them.
yeah sorry, I've just got some trauma from people claiming that languages can be used for stuff they can't really be used for just because of Turing completeness.
What irked me many times: people around here idolizing a certain PL they learned as kids and giving it much more credit than it ever deserved.
[/rant]
I completely understand the almost PTSD levels of reactions when people say "you actually can do ${obviously_difficult_thing} in ${obviusly_niche_language}!". I have the same reactions towards these statements myself.
I mean sure, if you're a good enough physicist you probably can make a lounge chair out of toothpicks, toilet paper tubes, rubberbands and glue. Doesn't mean that it's sustainable or viable to do so for everyone else. It's just your hobby; go wild and have fun! Don't pretend that's how lounge chairs should be mass-produced, however.
Same goes for PLs.
A lot of PLs should have remained niche curiosities and research ideas -- and nothing beyond that. Sadly we both know how people are. They easily fall in love and lose all scientific objectivity.
And again, as a guy who loves Elixir, it absolutely is not suited for writing CLI tools. Many would say it can be easily done, the community even has a few really good libraries for it as well, but the BEAM VM startup time absolutely kills its utility for tooling for me.
And, as others also said, Erlang / Elixir simply excel at orchestrating a lot of runtime micro-agents, each with their own small responsibility. And they do this better than any other language I've seen. But, for one-offs / scripts / CLI tools, Golang / Rust are very difficult to dethrone. We could also add Zig / D / V and others, I suppose, but I am not familiar with them.