LINUX.ORG.RU

Fortran 2018: новый стандарт языка

 , ,


3

4

2-го декабря 2018-го года Международная Организация по Стандартизации (ISO) опубликовала ISO/IEC 1539:2018, ранее известный под названием Fortran 2015.

Новый стандарт расширяет возможности взаимодействия с программами на C и параллельного программирования:

  • Введён новый тип CFI_cdesc_t, содержащий информацию о типе элементов, ранге, размере передаваемого массива и способе выделения его памяти. Ранее на сторону программы, написанной на языке C, вместо массивов чисел можно было передать только «голые» указатели, и о соблюдении границ массивов приходилось заботиться вручную.
  • Введено понятие команды (team), позволяющее разделить выполняющуюся на кластере программу на несколько сравнительно независимых подмножеств процессов.
  • Появилась возможность обработки ошибок отдельных процессов кластера (fail image и аргумент stat= вызовов change team, end team, event post, form team, sync all, sync images, sync team).
  • Добавлены атомарные операции над переменными (atomic_add, atomic_and, atomic_or, atomic_xor, atomic_fetch_add, atomic_fetch_and, atomic_fetch_or, atomic_fetch_xor, atomic_cas).
  • Улучшена совместимость со стандартом ISO/IEC/IEEE 60559:2011 для чисел с плавающей запятой.

Следующая версия стандарта временно называется Fortran 202x.

Новые возможности Fortran 2018

Бесплатно доступный черновик стандарта

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Да это просто праздник какой-то - день стандартов !
Признаюсь честно - я писал на фортране только на бумажке, и длилось это всего один семестр

kto_tama ★★★★★ ()

Отличный язык для научных целей. Сам писал на нем программы для обработки данных со спутников. Все понятно, предсказуемо и работает как полагается. Использовал стандарт 95 года в своём проекте.

wass ()
Ответ на: комментарий от Zhbert

Он ещё жив?

Жив.

Где его пользуют?

Там же где и использовали всегда: для расчетов. Видел тесты по которым с современными оптимизациями за счет возможности явно указывать такие абстракции как перемножение матриц и т.п. генерируется более быстрый код, чем на Си. При этом фортран более защищенный от «выстрелов себе в ногу», чем Си.

Хотя в принципе современный фортран можно было бы хоть для бизнес-логики использовать, язык и даже отчасти библиотеки позволяют.

praseodim ★★★ ()
Последнее исправление: praseodim (всего исправлений: 2)
Ответ на: комментарий от cr0

Подозреваю, потому, что есть Хаббл (1990, Дата схода с орбиты: после 2030 года) и всякие другие опортьюнити с инфраструктурой, на которых ПО с Фортраном. Может я и ошибаюсь...

PtiCa ★★★★★ ()
Ответ на: комментарий от hotpil

Фортран не следит за границами массива

как же тогда использование шага при индексации и возможность не упоминать верхнюю или нижнюю границу при использовании срезов?

grem ★★★★★ ()
Ответ на: комментарий от PtiCa

конечно ошибаешься

Для обработки изображений есть всякие IDL и python с матлабами. Это не HPC и расчеты простые.

А если нужно посчитать что-то действительно тяжелое, то почему бы и нет. Порог вхождения низкий, писать просто и удобно. Работает быстро. Всяких специализированных кодов много.

sshestov ()
Ответ на: комментарий от Zhbert

А куда денешься? Куча легаси кода, да ещё и метематического, который мало кто захочет переписывать. Те же *PACK библиотеки (minpack, linpack, etc). Кто их будет переписывать и зачем? А ими активно пользуются и из других языков.

WatchCat ★★★★ ()
Последнее исправление: WatchCat (всего исправлений: 1)
Ответ на: комментарий от upcFrost

Молодёжь пишет на том, что им преподают и что знают. 10 лет назад в РФ его, например, в МАИ преподавали. А так в Финляндии и США, например, и сейчас курсы есть в университетах.

Не хочешь ли ты сказать, что intel и nvidia создают компиляторы себе в убыток?

grem ★★★★★ ()
Последнее исправление: grem (всего исправлений: 1)

колдуны-ученые не понимают ничего...( в математических рассчетах давно решает безопасный раст, он не дает случайно разделить элемент на ноль за пределами границ массива

rust_afari ()

Да успокойтесь, пишут на фортране очень много. Любые числодробилки, например, модели глобальной циркуляции, все на нём пишут. Потому что реальной альтернативы нет.

yvv ★★★ ()