Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Будет ли в будущем создан универсальный язык программирования?

ТехнологииПрограммированиеИскусственный интеллект
  · 24,5 K
Образовательная платформа Хекслет  · 28 мар 2022  · ru.hexlet.io
Чтобы ответить на вопрос, нужно понимать, что вы иметете ввиду под универсальным языком.
Есть так называемые языки общего назначения. Под этом термином понимается, что ЯП можно использовать для создания софта (ПО) под разные предметные области: финансовые услуги, мобильное ПО, игры, под медицинское оборудование и так далее.
Дело в том, что ранние ЯП были разработаны для определенных целей, например для математических и научных вычислений, обработки данных или под конкретное оборудование. Это такие языки как: Ruby, PHP, Javascript, C, C++, C#, Go, Java и так далее
А есть языки предметно-ориентированные. Ну, самый простой пример это SQL, язык запросов. Или HTML - язык разметки гипертекста.
Так вот, на языках общего назначения уже можно писать почти что угодно. Почти. Потому что каждый язык программирования появлялся и решал свою конкретную задачу. Например Perl - был изначально создан для работы с текстом. PHP - для создания шаблонизации страничек в вебе. Постепенно языки переросли свою начальную цель.
Вряд ли будет язык на котором будут писать вообще все. Например можно взять Ассемблер и писать на нем, но смысл? Это будет дорого и медленно, но зато быстро. Язык программирования Ruby с фреймворками позволяет создавать прототипы приложений. Огромная скорость разработки помогает создавать стартапы и превращать их в конкурентные компании. Ruby - высокоуровневый язык. Некоторые считают, что он медленный. Но скорость разработки ПО выше, чем на C.
При этом одни языки программирования написаны на других (например PHP на C). Это нужно для того, чтобы не работать с низкоуровневыми вещами напрямую. Например выход за массив в PHP не так критичен, как в C, C++.
Некоторые технологии позволяют транслировать один язык программирования в другой, либо замещать технологии. Например чтобы не писать Javascript используют технологии типа Hotwire, Livewire, Clojurescript, в теории это позволяет разработчику в рамках одно языка писать и бэкенд (серверную часть) так и фронтенд (интерфейсы). На практике такое иногда приводит к проблемам. Например, кто-то должен это поддерживать. А чем более специфичная технология, тем меньше у неё может быть сообщества, а значит и поддержки в будущем.
Еще есть такая технология как WebAssembly. Это не язык программирования, а бинарный формат, который позволяет запускать код в браузере. В теории мы можем на разных ЯП программирования написать написать программу, которая будет работать в браузере, но на практике Wasm еще не распросранен.
По итогу могу сказать, что каждый ЯП решает свою задачу, зачастую по своему. Можно языки сравнить с инструментом - под каждую задачу у вас свой инструмент - молоток, пила, отвертка. Так и в программировании. Вы решаете задачу соответствующим инструментом.
Помогаем новичкам освоить профессию веб-разработчикаПерейти на ru.hexlet.io/webinars
1 эксперт согласен
Я бы поспорил с некоторыми конкретными утверждениями в ответе (например, рекламными лозунгами про Ruby 😏), но... Читать дальше
Можно сделать универсальный язык программирования, который будет решать любые задачи самым оптимальным вариантом. И быстрее всего такой язык уже существует.
Увлекаюсь естественными науками и математикой. Разбираюсь в производстве корпусной...  · 4 мар 2022
Чем более универсален язык программирования, тем хуже он справляется с решением тех или иных конкретных задач. Единственными удачными решениями по соотношению универсальность-производительность в наше время видятся Java и Go, где-то позади ещё маячит C#, и на том всё. Вообще, универсальность сама по себе не сильно востребована: чистый C всё так же используется при... Читать далее
3 эксперта согласны
Программирование, видеоигры и железо - это основная тема моего канал! Также веду канал на...  · 18 мая 2022  · youtube.com/channel/UCbORpXVw1JNc0JYFSUqLWXA
Я думаю, нет) 
Там где универсальность, там компромисс)
Есть телефон с камерой, но он не заменит профессионалу отдельной камеры и таких примеров можно привести много)
Всегда будут задачи, которые будут проще решаться на одном языке программирования, а какие то на другом) 
Мой канал на YouTube, тут тебя не хватает!Перейти на youtube.com/channel/UCbORpXVw1JNc0JYFSUqLWXA
2 эксперта согласны
А вы не задумывались что современные телефоны, сейчас лучше профессиональных камер прошлого. Причём сейчас в... Читать дальше
программист  · 29 авг 2022
Нет. Вот простые доводы: - Практический - чем дальше, тем больше новых языков изобретаются. Просто потому, что возникает больше ниш в которых надо эффективно работать. - - Теоретический - ЯП не может быть одинаково хорош во всём, как только вы улучшаете одни характеристики (проще учиться - Python) тут же ухудшаются другие (низкая скорость работы, на продвинутом уровне в... Читать далее
1 эксперт согласен
Это бред. Создать универсальный язык программирования можно и быстрее всего его давно уже создали.
Погромист на C#  · 4 мар 2022
А в чём должна заключаться "универсальность"? В принципе существуют языки общего назначения - на них, в теории, можно создать абсолютно любую программу. Но у каждого языка есть какая-то своя экосистема из библиотек и фреймворков, которые позволяют некоторые задачи решать чуть быстрее (дешевле), чем на других языках. А ещё есть рынок труда - и из-за него приходится... Читать далее
1 эксперт согласен
Подтверждаю ответ. В дополнение отмечу, что одним из важных аспектов универсальности является удобство реализации... Читать дальше
Диванный философ, по совместительству инженер  · 14 мар 2022
Они давно созданы. Причем их много. Они имеют собирательное название "языки общего назначения". Из самых популярных ныне: C/C++, Java/Kotlin, Python... Список разумеется можно продолжать. Поскольку такие языки существуют давно, есть еще и масса языков вышедших из употребления в широкой разработке: Basic, Pascal, Algol... Другими словами это языки которые либо изначально... Читать далее
1 эксперт согласен
Яндекс, как же уже достали ваши попытки сделать "лучше"! Может - уже хватит?!  · 4 мар 2022
Вряд ли. Во-первых - есть языки низкого уровня - тот же язык ассемблера - его, в принципе, можно считать универсальным, если, конечно, не учитывать платформо-зависимость. Во-вторых - различные языки предназначены для различных сред и типов задач - "собрать в кучу" в одном языке все парадигмы - просто не получится, да и слишком громоздким и неудобным он будет. Ну и... Читать далее
Есть канал на Яндекс Дзен. Пишу не часто, но по делу.Перейти на zen.yandex.ru/id/5d944c4daad43600afc753f3
Язык асемлера не является языком общего назначения. Для каждой системы команд он уникален.
Помощь пользователям ПК и ноутбуков - спрашивайте   · 11 апр 2023  · itmen.help
Создание универсального языка программирования, который мог бы использоваться во всех областях программирования, было бы замечательным достижением. Однако, такой язык программирования мог бы столкнуться с рядом проблем и ограничений. Во-первых, различные области программирования имеют различные требования и задачи, которые требуют специализированных языков программирован... Читать далее
Компьютерная помощь в вашем городеПерейти на itmen.help/uslugi
Доводы обсолютно не удивительны и какие-то детские что-ли.
Научные заметки о жизни: zen.yandex.ru/id/5c43498395753900ac66852d  · 1 мая 2022
Почти все языки программирования универсальны. В том смысле, что на них можно запрограммировать что угодно. Но появляются все новые языки. Зачем? Можно не значит удобно. Для разных задач лучше подходят разные парадигмы программирования. И появились процедурные, объектные, функциональные  и другие группы языков.  Язык программирования и среда разработки подобны набору инс... Читать далее
1 эксперт согласен
Ответ вообще не нуждается ни в слове комментария. Он верен.
Пенсионер   · 28 мая 2022
Пока есть языки программирования, их будет много. Нет  универсальных языков, как нет универсального автомобиля, пригодного для перевозки людей, цемента и тушения пожаров. 
Не верю я в унификацию языков программирования, так как программистское сообщество практически никем не управляется, только на уровне компаний.