5 древних языков программирования, которые все еще живы
Рассказали про языки программирования, которые считаются «мертвыми», но до сих пор используются в разных сферах.
2К открытий6К показов
В начале 2024 TIOBE опубликовал новый рейтинг языков программирования. Внезапно Fortran поднялся с 27 на 12 место, обогнав, например, Swift, Kotlin и Ruby. В топ-20 вошел и COBOL, поднявшись в 31 на 20 место. Рассказываем, почему они оказались в топе и какие еще «мертвые» языки программирования до сих пор используются.
Fortran
FORTRAN (FORmula TRANslation) — это один из самых старых высокоуровневых языков программирования. Первую версию выпустила IBM в 1957 году.
Язык появился как конкурент «Ассемблера» — для научных и инженерных расчетов (особенно для работы с матрицами и массивами). И благодаря скорости и эффективности быстро завоевал популярность. В начале шестидесятых создали десятки компиляторов Fortran.
Постепенно он отошел на второй план и уступил C++, Python, и Java и прочим современным языкам. Они оказались более гибкими, с более простым и понятным (и не таким громоздким) синтаксисом (и не таким громоздким) и куда лучше отвечали запросам. Люди стали разрабатывать все больше мобильных и веб-приложений, игр и прочего — а Fortran для этого не подходит.
В итоге язык вернулся в «академическую» нишу. И остается популярным в области высокопроизводительных вычислений, физики, астрономии, климатологии и других областях, где требуются сложные математические расчеты:
- Программы для моделирования погоды и климата, такие как модели Межправительственной группы экспертов по изменению климата (IPCC), часто написаны на Fortran.
- Пакеты для моделирования в области химии и биоинформатики, например, GROMACS для молекулярной динамики, используют Fortran для проведения сложных вычислений, связанных с химическими и физическими свойствами молекул.
- Язык используется в астрономических расчетах и разработке программного обеспечения для космических исследований. Например, на нем написано много астрофизического программного обеспечения для моделирования звезд и галактик.
- Частично на Fortran написаны приложения для механического и структурного моделирования, например, ANSYS и прочие CAD/CAE системы.
COBOL
COBOL (Common Business-Oriented Language) — это высокоуровневый язык программирования, созданный в 1959 году для работы с данными в финансовой сфере и статистике. Его разработали, чтобы сделать написание программ проще — особенно для людей, неглубоко погруженных в информатику. Какое-то время он оставался самым популярным языком в мире, и на нем по-прежнему работают многие устаревшие бизнес-системы.
Но использовать COBOL вне финансовой сферы оказалось проблематично. Код было слишком сложно поддерживать и обновлять, так что со временем большинство компаний отказались от него вовсе — в пользу более современных языков. К тому же со временем количество специалистов, знающих COBOL и желающих работать с ним, сократилось, что увеличило затраты на поддержку и развитие соответствующих систем.
В итоге язык остался «жить» в банках и страховых компаниях, которые работают с одними и теми же транзакционными системами десятилетиями. Кроме того, пенсионные и социальные системы, до сих пор работают на COBOL (слишком много рисков, связанных с миграцией на новые технологии). И некоторые промышленники и логистические компании по-прежнему пользуются этим языком процессами.
ADA
Ada создали в конце 1970-х — начале 1980-х годов по заказу Министерства обороны США для разработки бортовых систем военных объектов, авиа- и космических систем, медицинских приложений и прочего софта, от которого требуют в первую очередь надежности и безопасности.
Но особой популярности у языка не было. Ada оказался языком с очень высоким порогом входа. Да и на рынке оказались важнее скорость разработки и гибкость в изменении требований к продукту, а не предложенные максимальная надежность и строгая проверка всего на этапе компиляции. Для многих приложений такой уровень контроля над программой не требуется, а значит, преимущества Ada не оправдывают вложений. Зато в основных областях он все еще востребован, на нем пишут:
- оборонные системы, особенно в США и Европе;
- системы управления полетами, спутниковые системы и программное обеспечение для космических аппаратов (например, на нем разрабатывали по да Boeing 777 и шаттлов NASA);
- системы управления железными дорогами и некоторые системы безопасности автомобилей;
- медицинские устройства.
APL
APL (A Programming Language) появился в 1960-х годах для обработки массивов и обращения с большими блоками чисел в целом. Он отлично подходил для решения математических, статистических и логических задач — с помощью сравнительно короткого кода.
Но язык использует собственный набор символов (из-за чего для разработки нужна специальная клавиатура), поэтому порог входа оказался слишком высоким.
Кеннет Айверсон постарался исправить этот недостаток с помощью J, который использует диграфы. Но только в 1990 году — поздновато, чтобы популяризировать старый и весьма специфический стиль программирования.
Сейчас APL используется в редких проектах:
- в некоторых финансовых учреждениях и для анализа больших объемов данных.
- в науке для обучения концепциям обработки массивов и функционального программирования;
- некоторые программы, написанные на APL, продолжают использоваться в специфических областях, требующих поддержки и обслуживания.
PL/I
PL/I (Programming Language One) представила IBM в 1960-х годах — в ответ на появление COBOL. Он задумывался как универсальный язык, объединяющий Fortran (для научных расчетов) и Comtran (для бизнес-приложений). В результате получили смесь двух языков — со множеством дополнительных функций и тонной синтаксического сахара.
Но пытаясь сделать универсальный язык, IBM выпустила нечто слишком сложное и для поклонников Fortran, и для поклонников Cobol (да и зачем учить что-то новое, когда уже есть прекрасный язык под конкретные задачи). И пока компания пыталась решить все проблемы языка, появился более удобный и современный BASIC.
В итоге сейчас язык используется в больших и сложных системах, где поддерживать код проще и дешевле, чем переписывать: в банкинге, страховании и правительственных учреждениях. А еще в некоторых системах обработки данных, запущенных на больших компьютерах.
2К открытий6К показов