Технологически языки во многом совпадают (да, команды разные, но исполняют-то одно и то же). Их даже классифицируют именно по этой причине. Бывают языки совершенно уникальные, но тем и интересней их изучать - именно за уникальность эти языки стараются все знать. С другой стороны, каждый язык имеет собственные отличительные особенности, следствием которых являются до известной степени индивидуальное расширение возможностей, отсюда и выбор для решения конкретно поставленной задачи - соотношение времени на реализацию задачи к ожидаемому результату.
Теперь об описанной тобой ситуации: если я не знаю язык, но знаю, что он лучше всего подходит для реализации поставленной задачи, я оцениваю время на изучение нового языка и соотношу его со сроками, выделенными на исполнение задачи. Если сроки "терпят" - изучаю и реализую на нём. Нет - реализую на языке, который знаю, изучаю новый язык, реализую на нём и делаю повторный релиз той же задачи, которая уже была реализована мной ранее на менее подходящем языке.