Это были публикации «Предварительный отчет» и «Спецификации для IBM Matmal Transmula TRANslating System». А еще через два года работы, возглавляемая Бэкусом команда представила миру первый компилятор языка программирования Fortran (25 тыс. строк для IBM 704). Библиотека NML (Nmerical Method Library) – библиотека численных методов на языке Фортран.
Наименование Fortran является сокращением от выражения FORmula TRANslator, что переводится как транслятор или переводчик формул. Более современные версии языка программирования Fortran 90 и 95 были обновлены до стандарта Фортран 2003, который действует до настоящего времени. Отметим, что новые программы для компилирования в машинный код могут без ограничений использоваться в современных версиях и могут поддерживать даже 64-хразрядные процессоры. Кроме того, с учетом существующих тенденций разработчики создали компиляторы для Linux в форме объектно-ориентированной системы Actor Fortran. Введение свободного формата позволило создавать код, читабельность и ясность которого не уступает коду, созданному при помощи других современных языков программирования, таких как C или Java. Языки программирования четвертого поколения (4GL) представляют собой скорее среды для разработчиков, где можно писать код.
«Сегодняшний Fortran — это не тот язык, который я учил в 1975 году, а мой отец — в конце 1950-х. А сегодня он уже структурирован и содержит конструкции, аналогичные Algol, — при этом вы всё так же легко можете скомпилировать версию F77 (или даже Fortran-IV). Разработчикам языка удалось сделать современный язык и сохранить прошлое». Много лет этот язык использовали инженеры, и на нём написано множество лучших инженерных программ. Например, программы для решения задач с матрицами (matrix solvers) используются при конструировании самолётов, зданий, автомобилей и так далее.
Широкое распространение языка Фортран вынудило конкурентов, работающих в компьютерной области, проектировать компиляторы для своих компьютеров. По этой причине уже к концу шестидесятых годов двадцатого века на компьютерном рынке насчитывалось более сорока компиляторов Фортрана для разных платформ. Это стало основанием полагать, что Фортран является первым наиболее часто используемым языком программирования. Он был создан в 1954 году группой программистов под руководством Джона Бэкуса в корпорации IBM. Этот язык отличается от своих предшественников, языков низкого уровня, тем, что не был привязан к конкретному типу ЭВМ. Это позволило использовать язык на разных типах машин и сделало его очень популярным.
Программы для перевода программных текстов Fortran в набор машинных годов для IBM вплоть до 1997 в основном создавались специалистами Microsoft. Затем корпорация перестала разрабатывать компиляторы для Фортран, ссылаясь на низкую рентабельность. Сейчас основной поставщик таких программ – это компания DEC, которая в 1998 г. Так, 1-я колонка служила для маркировки текста как комментария (символом C), с 1-й по 5-ю располагалась fortran область меток, а с 7-й по 72-ю располагался собственно текст оператора или комментария. Если текст оператора не вписывался в отведённое пространство (с 7-й по 72-ю колонку), в 6-ой колонке следующей карты ставился признак продолжения, и затем оператор продолжался на ней. Другим крупным поставщиком систем разработки на Fortran является фирма Lahey, предлагающая интегрированные решения для Windows и Linux.
Фортран — основной язык для АСВТ и СМ ЭВМ, часто использовался вместе с препроцессором РАТФОР. Машины ЕС ЭВМ, появившиеся в 1972 году, уже изначально имели транслятор Фортрана («позаимствованный» с IBM/360 вместе с другим программным обеспечением). Слияния компаний явились причиной того, что последующие продукты появлялись на рынке под торговыми марками Compaq и HP. Поддержка Фортрана реализована также для всех высокопроизводительных платформ HP. Фактические аргументы — это аргументы, передаваемые подпрограмме или функции для выполнения при её вызове.
Автоматические массивы во время выполнения программы находятся в стеке, размещаемые (с помощью оператора ALLOCATE) — в куче[25]. Векторный индекс — целочисленный одномерный массив, значения которого — индексы некоторого другого массива. Векторные индексы используются для создания произвольных сечений многомерных массивов и являются их обобщениями. При использовании векторных индексов следует следить за повторяющимися значениями индексов в левой части оператора присваивания, так как в этом случае будет осуществлена попытка записи в одну ячейку памяти, возможно, разных значений. Порядок индексов — произвольный (хотя этим не следует злоупотреблять во избежание снижения быстродействия). Оператор и конструкция FORALL допускает использование только чистых процедур и функций.
После переразмещения массива to массив from освобождает память и становится неразмещённым. Может быть полезна в численных методах с изменяющейся дискретизацией задачи (многосеточных и адаптивных методах). Все встроенные функции и подпрограммы Фортрана, в том числе математические (кроме обращающихся к операционной системе, функций даты и времени, а также датчиков случайных чисел) являются чистыми, то есть не создают побочных эффектов. Чистые функции введены с целью повышения культуры программирования и повышения эффективности распараллеливания алгоритмов[25][9].
Последние также включают библиотеки BLAS и LAPACK, разработанные в программировании Fortran. Matlab изначально была программой в Fortran, распространяемой в университетах и исследовательских центрах. Однако современный Фортран (в основном начиная с версии Fortran’90) избавлен от избытка меток за счёт введения таких операторов, как DO … END DO, DO WHILE, SELECT CASE, конструкции IF THEN-ELSEIF THEN-ELSE-END IF и др. Более того, в современных стандартах языка оставлен лишь классический оператор GOTO, применяемый во многих языках и поныне.
IBM, создатель Fortran, даже объявила о готовности провести обучающие курсы по языку COBOL, лишь бы увеличить суммарное число программистов во всем мире, знающих этот язык. Специалисты Института инженеров электротехники и электроники (Institute of Electrical and Electronics Engineers, IEEE) опубликовали рейтинг языков программирования в своем ежемесячном журнале IEEE Spectrum. Fortran использует статическую и сильную типизацию, что позволяет компилятору отлавливать многие ошибки программирования на ранних стадиях.
Для одномерного массива array или при отсутствии аргумента dim результатом является скаляр, иначе — массив с рангом, на единицу меньшим ранга массива array. Функции возвращают индекс первого по порядку следования элемента массива array. Если аргумент функций dim не задан, или если array — одномерный массив, то результат записывается в одномерный массив. Для многомерных массивов array результат записывается в массив с рангом, на единицу меньшим ранга массива array (исключается измерение с номером dim).
Фортран перестал быть просто языком программирования, это давно культурный феномен. Настолько, что стал иллюстрацией в борьбе чернокожих женщин за свои права (попробуйте, навскидку, придумать ещё хоть одно понятие из ИТ, которое можно было бы положить в эту категорию). Авторы не предполагают никакого предшествующего опыта параллельных вычислений и охватывают только основы, а также используют лучшие практики. Эффективность вычисления графических процессоров с использованием CUDA Fortran обеспечивается целевой архитектуры графического процессора. Можно использовать любую рабочую станцию Unix с компилятором F 77. В дополнение к «нормальным» 32-разрядным платформам существуют различные 64-битные компиляторы, например, для Intel Itanium и Intel EM64T.