Среди большого числа современных языков программирования уже мало кто, наверное, вспоминает об этом прародителе и первопроходце этой области. А между тем есть круг задач для которых выбор этого языка является если не оптимальным, то во всяком случае предпочтительным.
Зачем и почему?
Необходимость программировать на фортране может возникнуть в случае, если вам необходимо решить достаточно сложную с расчётной точки зрения задачу. Во-первых, фортран обладает широким спектром инструментов и возможностей для решения таких задач; во-вторых, за долгое время существования языка накопилась обширная библиотека программ и процедур, позволяющих быстро и точно решать самый широкий спектр проблем.
Синтаксис фортрана строился таким образом, чтобы обеспечить максимальную эффективность автоматической оптимизации исполняемого кода, поэтому приложения, написанные на нём, могут похвастаться высокой производительностью. Фортран оснащен богатым набором встроенных математических функций: чего стоит только наличие встроенного комплексного типа данных для работы с мнимыми числами! Кроме того, для массивов одинаковой формы определены все арифметические операции и логические операции отношения.
Взгляд в прошлое
Считается, что фортран — первый язык программирования высокого уровня, имеющий транслятор. В 1957 году была выпущена его первая коммерческая версия. Специальный комитет занимается разработкой стандартов фортрана: он собирает и обобщает предложения по улучшению языка, а затем выпускает серию проектов стандарта, доступных для всеобщего обсуждения. Такой подход позволяет вносить улучшения в фортран, добавлять новые возможности.
Изначально программы писались для выполнения на перфокартах, поэтому один из первых распространённых стандартов - Fortran77 — требует записи в так называемом фиксированном формате. Фиксированный формат накладывает ограничения на структуру кода: он определяет специальные позиции в строке для меток, символа комментария; ограничивает длину строки и максимальную длину оператора.
В стандарт Fortran90 был включён свободный формат — в котором большинство ограничений были либо сняты, либо ослаблены. Также стандарте Fortran90 появились элементы объектно-ориентированного программирования, которые получили развитие в стандарте Fortran2003.
Компиляторы
Сторонникам не только бесплатного, но и открытого ПО тоже есть из чего выбрать: в коллекцию компиляторов GNU входит gfortran, который пришёл на смену компилятору g77 (работа над ним была прекращена). Данный компилятор полностью совместим со стандартом Fortran95, имеет поддержку устаревшего формата - Fortran77. Также в него включено множество дополнительных возможностей, представленных в стандартах Fortran2003 и Fortran2008.
Другим известным открытым компилятором является g95. В g95 также реализована поддержка всех основных стандартов фортрана. Компилятор доступен практически для любой платформы. Этот проект может быть выбран вами, если имеется необходимость компилировать программы для Windows.
И ГДЕ IDE?
С минималистами и рационалистами мы разобрались — теперь черёд максималистов. И здесь мы приходим к «монстру программирования» - IDE Eclipse. Поддержка фортрана реализуется в нём путём установки дополнения Photran. После чего вам будет доступен максимальный спектр инструментов: поддержка стандартов фортрана 77-2003, подсветка синтаксиса, помощники (content assistent), всплывающие подсказки типов и объявлений, интерактивный отладчик, поддержка систем контроля версий и многое другое. К сожалению, настроить Eclipse на работу с компилятором g95 у меня не получилось, но Intel Fortran Compiler работает отлично: доступна настройка всех необходимых команд компилятора, работает отладчик. Здесь имеется небольшой секрет — после установки компилятора IDE может не видеть его — ошибка «/bin/sh: ifort: command not found». Проблема решается записью пути к компилятору в PATH и, дополнительно, нужно запускать Eclipse из терминала! Будьте бдительны, эта особенность практически нигде не упоминается.
Заключение
Можно сказать, что несмотря на обилие современных языков, Fortran не собирается сдавать позиции: он занял свою нишу высокопроизводительных вычислений и справляется с этой деятельностью «на отлично». Желающие могут найти и выбрать для себя и компилятор, и среду разработки — доступно множество как открытых так и коммерческих решений. Особо радует стремление производителей компиляторов обеспечить многопотоковость выполнения программ, широкий набор опций для оптимизации кода.
Хотя в Linux созданы все условия для комфортной работы с фортраном, есть некоторые моменты, требующие улучшений: далеко не все IDE позволяют проводить отладку при выполнении программ, не всегда легко настроить взаимодействие компилятор-IDE (настроить g95 в Eclipse автору не удалось).
Для тех кто захочет найти дополнительную информацию о Fortran — вот здесь вы сможете найти множество ссылок на разнообразные ресурсы: стандарты, книги, библиотеки, компиляторы.
4 комментария:
Непонятно для кого статья? Те, кто пишет на Java, C читать это не будут, так как Fortran для них какая-то экзотика и им это по барабану. Не кинутся они создавать фортран-проект Для тех, кто реально пишет на фортране, все эти ляляля тополя для детей читать не интересно. Лучше бы написал как реально настроить этот Eclipse для Fortran девелопера. А то там одни теоретики сидят, с их советов сразу видно, что реально никто этого не делал. Это зарезервировано, но все пишут на С++.
вот неслабо помогло, спасибо автору за подсказку про запуск из терминала.
Большое спасибо, как раз искал такую вводную статью.
Большое спасибо, как раз искал такую вводную статью.
Отправить комментарий