bash, sql, html, mathLab - языки заточенные под определенные задачи, мало подходящие для других задач.
Популярные языки типа python, js, java, scala, с++ -> подходят для любых задач (но с определенными сложностями, необходимы библиотеки, обертки, нужно писать много лишнего кода)
вот например в баше чтоб получить список файлов - нужно ввести ls
чтоб сделать тоже самое на JAVA - необходимо целую программу написать, строк на 10), потом ее скомпилировать, а потом запусить джава машину и передать ей этот код. Довольно геморройное занятие для такой задачи.
----
но нужно понимать что в томже баше простота для простых задач (типа обработки файлов и текстов), выливается чудовищную сложность для более сложных задач.
П. С.
если работаешь только с одним типом задач - то тебе выгодно использовать заточенный под эту задачу язык.
Если работаешь большим количеством разнообразных задач в разных сферах, то лучше освоить и использовать один инструмент (язык) общего назначения но на высоком уровне - чем 10 специализированных инструментов на посредственном уровне.
Я например на scala - пишу фронтэнд, бэкенд, работаю с БД, пишу скрипты вместо баша, создаю быстрые наброски прототипы (вместо питона), и запускаю теже самые прототипы в продакшен где требуется высокая производительность и многопоточная обработка данных.
Нигде не касаюсь вообще никаких других языков.