Если кто-то скажет, что Fortran — это язык из далёкого прошлого, который давно неактуален, — не спешите соглашаться. В 2025 году Fortran живёт, развивается и даже дерзко смотрит в будущее. Давайте разберёмся, что же происходит с этим ветераном программирования и почему он по-прежнему важен для науки и индустрии.

Почему Fortran не сдаётся?

Fortran появился в далеком 1957 году, и с тех пор стал главным оружием учёных, инженеров и исследователей для тяжёлых вычислительных задач — от моделирования климата до аэродинамики. Он оптимизирован под численные вычисления, быстро работает и умеет эффективно использовать многопроцессорные системы.

Но в мире технологий многое меняется быстро, и Fortran пришлось не просто догонять время, а переосмысливать себя. В 2025-м он получил новый импульс к развитию благодаря обновлённым стандартам и современным инструментам.

Стандарты Fortran 2023 и 2025: что нового?

Рабочие группы WG5 и сообщество активно трудятся над стандартами, которые добавляют в язык новые возможности:

  • Расширенная поддержка встроенных функций для работы с тригонометрией и строками;

  • Улучшения в области обобщённого программирования и деклараций;

  • Новые конструкции для удобной работы с массивами и условными выражениями;

  • Поддержка OpenMP 6.0, что даёт мощный инструмент для параллельных вычислений.

Эти изменения не просто косметика — они делают Fortran более удобным для современных задач, упрощают разработку и увеличивают производительность.

Компиляторы и инструменты: прогресс налицо

Intel Fortran Compiler 2025.1

Intel продолжает активно развивать свой флагманский компилятор, который теперь поддерживает новые возможности стандарта и улучшенную работу с OpenMP. Это значит, что код на Fortran будет работать ещё быстрее и надёжнее.

LFortran — свежий взгляд на Fortran

LFortran — компилятор на базе LLVM, который развивается стремительными темпами. Он интерактивный, поддерживает современный стандарт и подходит для научных вычислений. Его сообщество активно растёт, и он уже начинает вытеснять старые инструменты.

Fortran Package Manager (FPM)

Управление пакетами — давно привычная вещь для большинства языков, и Fortran не исключение. FPM помогает организовать код, автоматизировать сборку и тестирование. Версия 0.12.0 принесла поддержку новых компиляторов и улучшила совместимость.

Что обсуждают на форумах и в сообществе?

Современные разработчики Fortran живо интересуются интеграцией с нейросетями, ускорением вычислений на GPU, а также переносом старого кода на новые архитектуры. На форумах нередко обсуждают вопросы совместимости, оптимизации и проблемы с обучением новых специалистов.

Кстати, несмотря на все сложности, сообщество готовится к конференции FortranCon 2025 — отличная возможность обменяться опытом и вдохновиться идеями.

А что с кадрами?

Главная задача на ближайшее время — привлечь молодых специалистов. Fortran давно не самый популярный язык в вузах, и его стоит популяризировать через современные проекты и образовательные инициативы. Только так можно обеспечить стабильное развитие языка и сохранить существующие научные разработки.

Итог: Fortran остаётся с нами

Fortran в 2025 году — это не просто язык прошлого, это живая, развивающаяся экосистема. Он по-прежнему востребован там, где нужна скорость, точность и надёжность.

Если вы работаете с научными вычислениями, то Fortran — отличный выбор, который ещё долго будет актуален. И кто знает, возможно, он станет вашим союзником в проектах будущего.

Fortran из 1990 — классика, строго и просто

      PROGRAM FACTORIAL
      INTEGER N, I, FACT
      PRINT *, 'Введите число:'
      READ *, N
      FACT = 1
      DO 10 I = 1, N
         FACT = FACT * I
10    CONTINUE
      PRINT *, 'Факториал равен ', FACT
      END
  • Используется старый стиль с номерами строк и без современного форматирования;

  • Нет объявлений модулей и более сложных конструкций;

  • Всё максимально просто, но достаточно громоздко и без современных удобств.

Fortran в 2025 — современный стиль, лаконично и понятно

program factorial
  implicit none
  integer :: n, i, fact

  print *, 'Введите число:'
  read(*,*) n

  fact = 1
  do i = 1, n
     fact = fact * i
  end do

  print *, 'Факториал равен ', fact
end program factorial
  • Нет необходимости использовать номера строк;

  • Строгая типизация с implicit none для предотвращения ошибок;

  • Использование end do вместо меток;

  • Код стал читаемее и поддерживается всеми современными компиляторами.

Дополнение — пример с использованием современных возможностей Fortran 2025 (массивы и функции)

program factorial_modern
  implicit none
  integer :: n

  print *, 'Введите число:'
  read(*,*) n

  print *, 'Факториал равен ', factorial(n)

contains

  recursive function factorial(x) result(res)
    integer, intent(in) :: x
    integer :: res

    if (x <= 1) then
      res = 1
    else
      res = x * factorial(x - 1)
    end if
  end function factorial

end program factorial_modern

Здесь показано:

  • Использование рекурсивной функции;

  • Вложенные процедуры contains;

  • Чистый современный стиль с явными типами.

Комментарии (6)


  1. fulvert
    21.07.2025 07:32

    Судя по приведённому примеру кода это basic или pascal. И к чему огород городить новым языком?


  1. NeoNN
    21.07.2025 07:32

    Из таких простых примеров непонятно, где же этот язык все-таки лучше для научной среды, если его синтаксис меняется так, что даже сами динозавры уже не будут уметь на нем писать без обратной совместимости. С ума сойти, массивы в 2025 завезли. Также непонятно, каким образом код разворачивается в продакшн среде. Ну написал я что-то, дальше-то что? Как интегрировать с остальными модулями и языками?


    1. Mr_Boshi
      21.07.2025 07:32

      В научной среде огромное количество легаси кодов на фортране. Иногда с ним приходится работать только из-за этого. Когда надо дописать модуль, расширить функционал. А лучше новые версии тем, что ближе к современному стилю написания кода и при этом совместимы с этими древними кодами.


      1. Wosk1947
        21.07.2025 07:32

        Как мне кажется, В 2025 году, чем связываться с древней инфраструктурой фортрана из-за каких-то научных библиотек, которые есть только на фортране, легче взять эти библиотеки и транспилировать в C, инструменты для этого есть, а дальше обернуть для вызова из питона, то есть современного стандартного инструмента для научной среды. Понятно, что научные сотрудники далеко не всегда на такие маневры способны, потому что они не программисты в том смысле, что они зачастую не умеют совершать инфраструктурные операции - транспиляции языков, написание интеропов, настройки сборочных конвееров и т.д. То есть у научного сотрудника компетенция в программировании обычно ограничено написанием изолированного скрипта на одном языке. Но под такие дела можно в лабораторию пригласить студента с какого-нибудь соседнего программистского факультета в качестве практики или за плюс к стипендии.


  1. Nuflyn
    21.07.2025 07:32

    хоть и не фанат фортрана из-за его громоздкого синтаксиса, все же сложно не признать, что в своей области (численные методы, вычислительная метеорология, гидродинамика) он чувствует себя более чем неплохо


  1. WinPooh73
    21.07.2025 07:32

    Стиль LLM узнаётся с первых двух абзацев.