Silverfrost FTN95: Fortran для Windows — компилятор языка программирования Fortran для компьютеров под управлением Microsoft Windows . Он генерирует исполняемые программы из исходного кода, написанного человеком, для собственных платформ IA-32 Win32 , x86-64 (с версии 8.00 [1] ) и для платформы Microsoft .NET . Существует бесплатная версия Personal, которая генерирует программы, которые кратковременно отображают баннер, а также версии Commercial и Academic.
FTN95, как и его предшественник FTN77, имеет сильные опции проверки времени выполнения, которые в совокупности называются CHECKMATE. Переключатели компилятора могут включать различные уровни проверки времени выполнения. К ним относятся проверки границ массива, изменение констант, изменение DO LOOP, проверка аргументов и использование неопределенных переменных. Время выполнения программы увеличивается при использовании проверки. [2]
ClearWin+ — это библиотека, встроенная в систему времени выполнения FTN95. Она предлагает простой в использовании интерфейс для Windows API и недоступна при создании кода .NET. Она использует набор кодов формата и обратных вызовов . Коды формата напоминают коды printf в стиле C. ClearWin+ используется для питания пользовательского интерфейса Simfit . Начиная с версии FTN95 7.00 включена 64-разрядная версия ClearWin+. Ее можно использовать с существующими бесплатными 64-разрядными компиляторами.
Простая программа ClearWin+:
INTEGER i , winio @ EXTERNAL func i = winio @ ( 'Нажмите это, чтобы увидеть, что произойдет &' ) i = winio @ ( '%^bt[PRESS]' , func ) END c --- Функция для выполнения чего-либо --- INTEGER function func () func = 1 END
Полный графический интерфейс с окнами, меню, всплывающими диалоговыми окнами, списками, полями редактирования, растровыми изображениями, панелями инструментов и т. д. может быть разработан с использованием доступных кодов формата. Приложения, написанные с использованием ClearWin+, также могут содержать графические области, что позволяет включать диаграммы и графики. Также может быть включена графика OpenGL .
Простая программа ClearWin+, демонстрирующая построение двухмерного графика с помощью ClearWin+:
ИСПОЛЬЗОВАТЬ clrwin ЦЕЛОЕ ЧИСЛО , ПАРАМЕТР :: n = 101 ДЕЙСТВИТЕЛЬНОЕ ЧИСЛО * 8 x ( n ), y ( n ), th1 , a , dth1 !Создание массивов данных xy a = 1.d0 th1 = 0.d0 dth1 = 4.d0 * ATAN ( 1.d0 ) / 2 5.d0 DO i = 1 , n , 1 x ( i ) = a * SQRT ( th1 ) * COS ( th1 ) y ( i ) = a * SQRT ( th1 ) * SIN ( th1 ) th1 = th1 + dth1 END DO ! Настроить график CALL WINOP @ ( '%pl[frame,etched,gridlines,colour=blue,width=2,symbol=5]' ) CALL WINOP @ ( '%pl[smoothing=4,x_array,margin=100]' ) CALL WINOP @ ( '%pl[Title="Спираль Ферма"]' ) ! Установить шрифт окна (%fn), размер текста (%ts) и установить полужирный шрифт (%bf) i = WINIO @ ( '%fn[Tahoma]%ts%bf&' , 1.5d0 ) ! Создать графическую область 800 x 800 и построить кривую, определенную данными в x и y i = WINIO @ ( '%pl' , 800 , 800 , n , x , y ) КОНЕЦ
FTN95 может добавлять дополнительную отладочную информацию в создаваемые им EXE-файлы. Эта возможность становится доступной, когда пользователь запрашивает ее с помощью соответствующих параметров компилятора ( /debug , /check , /undef ). Отладчики SDBG/SDBG64 — это быстрые и эффективные инструменты, которые легче изучать и использовать, чем гораздо более универсальные, но ресурсоемкие инструменты Visual Studio.
FTN95 был первым компилятором Fortran, способным создавать код для Microsoft .NET. Кроме того, доступны подключаемые модули, которые позволяют писать, компилировать и отлаживать программы FTN95 внутри Visual Studio . Подключаемые модули полностью поддерживают генерацию кода Win32 и .NET. Текущая версия содержит подключаемые модули для Visual Studio с 2008 по 2019 год. В настоящее время подключаемого модуля для Visual Studio 2022 нет. Подключаемые модули FTN95 можно установить в Visual Studio Community Edition .
Plato — это интегрированная среда разработки , поставляемая с FTN95. Она может редактировать, компилировать и отлаживать программы способом, аналогичным подключаемым модулям Visual Studio. Хотя Plato специализируется на Fortran, она не ограничивается им и может быть настроена для работы с любым компилятором. Она разработана как автономная от FTN95.
FTN95 был разработан Salford Software Limited, компанией, принадлежащей Университету Солфорда , и является преемником их компилятора Fortran 77 FTN77. В августе 2004 года Salford Software передала контроль над FTN95 компании Silverfrost Limited. Silverfrost FTN95 часто называют Salford FTN95 из-за его родословной в Университете Солфорда.
Программы FTN95 могут быть связаны с динамическими библиотеками, созданными другими компиляторами Fortran, такими как gFortran и Intel Fortran. Соглашения о вызовах среди этих компиляторов довольно похожи, и компоновщики Silverfrost (Slink/Slink64) могут напрямую связывать объектные файлы пользователей с процедурами в одной или нескольких динамических библиотеках Windows (DLL), таких как Intel MKL DLL, без необходимости в библиотеке импорта.
В FTN95 доступны функции более поздних стандартов Fortran 2003 и 2008, в том числе:
Фортран 2003 :
Фортран 2008 :