Благодаря Fortran программисты перестали использовать машинный код и вручную управлять процессором и памятью компьютера. И хотя с развитием других языков он утратил свое лидерство, по используемости он все еще дает фору более современным языкам. Вот все, что вам нужно знать о «Переводчике формул»:

Язык: Fortran

Год появления: 1957

Популярность (индекс TIOBE 2020): 32-е место

Технические требования: текстовый редактор.

Сложность для изучения: 5/10.

Приветствие и возведение двойки в степень на языке Fortran

Кто и зачем придумал Fortran?

Fortran создали в компании IBM: первую версию протестировали в 1954 году, а коммерческий релиз состоялся в 1957 году. Группой разработчиков руководил исследователь компьютерных наук Джон Бэкус, который вместе с датским ученым Петером Науром создал логику построения слов в синтаксисе многих языков: форму Бэкуса — Наура.

Перед созданием Fortran магистр математики Колумбийского университета Бэкус работал с компьютерами всего несколько лет, поскольку первый коммерческий компьютер для ученых IBM 701 появился только в 1952 году, всего за два года до начала тестирования Fortran. Программы тогда писали на машинном коде или языке ассемблера, то есть вручную задавали инструкции процессору, памяти и другим компонентам компьютера в виде нулей и единиц двоичного кода или в лучшем случае с помощью сложных команд. 

В 1953 году Бэкус предложил упростить эту работу с помощью алгебраической записи кода (слов в виде логических формул) и компилятора, который перевел бы ее в машинный код. IBM одобрила разработку, поскольку продажи компьютеров не росли: пользователям было слишком сложно. Проект назвали Fortran — сокращение от слов Formula Translator (англ. «переводчик формул»).

Чем языки высокого уровня отличаются от языков низкого уровня?

Низкоуровневые языки программируют сам компьютер: они указывают, что должна делать каждая ячейка памяти процессора. Чтобы не заниматься этим «микроменеджментом», есть языки высокого уровня. Программист пишет абстрактные логические формулы и условия, а компьютером по ним управляет программа-компилятор.

Появление Fortran в 1957 году навсегда изменило компьютерные науки. В сравнении с машинным кодом новый язык работал в 20 раз эффективнее: на 1000 машинных команд приходилось всего 47 автоматизированных команд Fortran. Именно в этом языке впервые появились простые слова вроде GO, TO и DO, превратившие английский язык в аналог строгой алгебраической записи. 

В конце 1950-х следом за Fortran появились и другие языки высокого уровня: Algol и COBOL. На ЭВМ, разработанных в СССР, сначала применяли Algol, но затем, как и во всем мире, стали использовать Fortran. В Институте прикладной математики им. Келдыша даже создали компилятор «Форшаг» («Фортран шаговый»): он помогал переводить программы на Fortran в АЛМО — советский алгоритмический язык с русскими словами.

В 1966 году Fortran стал первым национальным стандартом США в области информатики. Позднее вышло еще шесть стандартов языка, последний из них — Fortran 2018. Они вводили новые операторы языка, например, IF THEN в 1988 году, развивали поддержку объектно-ориентированного программирования и увеличивали взаимодействие с языком C.

Для чего Fortran нужен сейчас?

Согласно рейтингу TIOBE Index, в 2020 году Fortran занимает 32-е место по частоте использования в мире, хотя в 1993 году он занимал 3-е место. Постепенно его вытесняют более быстрые языки. 

Больше узнать про TIOBE и посмотреть, какие языки оказались в топе у него и других рейтингов можно из нашей статьи «Самые популярные языки программирования. Хабратоп 2020 года». 

Как и 60 лет назад, сейчас Fortran применяют в научных исследованиях и моделировании, особенно в физике. Fortran создавался как «переводчик формул» и все еще полезен именно в сложных математических расчетах, например матриц и массивов. 

Ученые используют Fortran из-за скорости вычислений: наряду с C++ он все еще является одним из самых быстрых языков в мире. Для сравнения: популярный для обработки данных язык Python работает в 100 раз медленнее. Также популярность у физиков вызвана научной традицией: ученые накопили большой опыт работы на Fortran в XX веке и продолжают использовать написанные тогда программы и библиотеки до сих пор.

Где используют Fortran?

Обрабатывают данные с допплеровских измерителей — радаров для прогнозирования погоды, исследования атмосферы и мирового океана. 

Моделируют наночастицы, атомные структуры, звезды и галактики

Анализируют ДНК, например для генетической селекции экономически эффективных кур.

Согласно опросу Intel 2014 года, все пользователи языка Fortran собирались продолжать работать с ним в ближайшем будущем. Однако 90% заявили, что применяют его в комбинации с C. Именно поэтому новые релизы языка (2003, 2008 и 2018) развивают совместимость языка с С.

Сложно ли учить Fortran?

Отвечает Михаил Ефимов, fullstack-разработчик, преподаватель Учебного центра «Специалист» при МГТУ им. Н.Э. Баумана, занимавшийся на Fortran моделированием распространения нейтронов в ядерном реакторе: 

«Fortran похож прежде всего на С. Язык С сложнее, чем Fortran, из-за дополнительных возможностей. Выучить Fortran на базовом уровне довольно просто. Для более сложных задач, например вычислений в физике, у него есть неудобные моменты в синтаксисе. Знание других языков ускорит обучение, но никаких специфических навыков не нужно».

Синтаксис Fortran даже немного проще, чем у популярного на школьных уроках информатики Pascal: не нужно ставить «;» в конце каждой строки или «:» перед знаком равенства. Fortran, как и другие языки высокого уровня, использует простые английские слова для действий и условий: DO, IF, THEN, WRITE, END.

Чтобы писать код на Fortran, достаточно самого простого текстового редактора. Но удобнее использовать программы, которые для наглядности раскрашивают синтаксис, например Sublime Text. Чтобы программа заработала, нужен компилятор: например G95 для Windows и gfortran для MacOS, а также Intel Fortran Compiler

Студентам-физикам часто преподают именно Fortran: для непрофессиональных программистов он проще, чем C или С++. Изучать его точно стоит, если вы хотите заниматься наукой: физикой, астрономией, метеорологией, биологией. Также можно освоить его как первый язык программирования — переходить к другим языкам с этим знанием будет легче. 

Бонус: Профессор Фортран

В 1991 году вышла детская книга «Энциклопедия профессора Фортрана», написанная физиками Андреем Зарецким и Александром Трухановым. И хотя домашних компьютеров в России тогда почти ни у кого не было, а на школьных уроках информатики ученики сидели за советскими ЭВМ по несколько человек, интерес к компьютерной науке был. Поэтому энциклопедия разошлась огромными тиражами и стала культовой. 

Действие энциклопедии происходит в городе Симплексе, а главный герой — профессор Фортран — носит имя первого языка программирования высокого уровня. На страницах книги он учит детей терминам информатики и программирования в порядке алфавита. Например, в главе с буквой «Я» рассказывается о языках программирования: машинном коде и первых высокоуровневых языках (Fortran, Algol, Pascal, Cobol и др.). Книга не забыта и сегодня — теперь персонажи энциклопедии стали героями мемов:

Автор: Сергей Галкин

    Полезные материалы в одной еженедельной рассылке
    Подписывайтесь, не пожалеете.