Top.Mail.Ru

Сложная судьба Фортрана. Ностальгия для опытных программистов

Сложная судьба Фортрана. Ностальгия для опытных программистов

Если в 60-е годы вам нужно было написать компьютерную программу для решения научной или технической задачи, то вы пользовались языком Фортран. Он был неуклюжим и пользоваться им было неудобно, но выбора у вас не было.

Затем были разработаны языки, более удобные в использовании, более изящные и эффективные: С, BASIC, APL, LISP, PASCAL и другие. Однако физики и инженеры по-прежнему пользовались Фортраном. Они анализировали напряжения в конструкциях мостов и самолетов, моделировали термоядерные реакторы и предсказывали эволюцию сверхновых — и все это на языке, который был прочно привязан к перфокартам.

С появлением многопроцессорных компьютеров, разбивающих задачи на составные части и одновременно решающих эти части, специалисты по языкам программирования разработали целый ряд новых компьютерных диалектов. Для параллельных процессоров предназначены, в частности, такие языки, как SETL, NETL, ACTORS, LINDA, и другие. Однако Фортран не сдавался: группа программистов завершила длившуюся 13 лет работу по стандартизации старого языка программирования, который, по их мнению, почти идеально подходил для широкого диапазона задач с параллельным программированием.

Расширенный Фортран

Как называется этот язык? Фортран. Точнее, Фортран-90, известный также как Расширенный Фортран. (Предыдущими версиями были Фортран-66, стандартизованный в 1966 г., и Фортран-77, который в действительности был одобрен в 1978 г.)

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

Однако по счастливому стечению обстоятельств его свойства, упрощающие жизнь программисту, обеспечивают также четкие ориентиры для выполнения программ на машинах, насчитывающих сотни или даже тысячи процессоров, как говорил Д. Хиллис, конструктор параллельных компьютеров, основатель корпорации Thinking Machines в Кембридже.

Наиболее важным изменением в Фортране-90 были новые операторы, которые манипулируют массивами данных — например, описывающих температуру и скорость ветра в каждой точке решетки, покрывающей все западное полушарие Земли, — как едиными объектами. Компилятор (или компьютерная программа, переводящая операторы Фортрана в двоичные машинные коды) может превращать эти операторы в команды, которые производят арифметические операции над каждым элементом массива в параллельном режиме. В прошлом программисту приходилось писать операторы для обработки каждого элемента по отдельности.

Нелегкая эволюция

По мнению Дж. Фокса, специалиста по вычислительной технике из Сиракузского университета, Фортран-90 должен был оказаться почти идеальным средством для параллельного программирования половины научных и технических вычислений. Кроме того, он считал, что и многие другие программы можно переработать так, чтобы они стали совместимыми с принципами параллелизма, заложенными в Фортране-90.

Эволюция была нелегкой. Работа по обновлению Фортрана продолжалась почти 14 лет. Кроме того, некоторые программисты (из числа тех, чью жизнь Фортран-90 был призван упростить) не торопились переходить на усовершенствованную версию. Они считали, что в ней осталось мало сходства с предыдущими версиями и что ее новые средства будет трудно усвоить.

И снова пришлось изменяться

Но эти программы осваивались слишком долго и Фортран снова изменился. Через несколько лет Фортран-90 пришлось снова расширить, чтобы увеличить диапазон легко составляемых параллельных программ и вернуть в язык средства, удаленные из его ранних проектов слишком консервативными членами Комитета по стандартизации. Сколько же раз можно было обновлять этот старый, уважаемый язык программирования? Позже появились: Фортран-95 (1997), Фортран-2003 (2004) и Фортран-2008 (2010).

Сколько он еще просуществует? На данный вопрос будет уместно вспомнить слова специалиста по компьютерным языкам Г. Стила из корпорации Thinking Machines, который в 1990 году процитировал высказывание одного ученого:

«Я не знаю, как будет выглядеть язык программирования в 2000 году, но я знаю, что он будет называться Фортран».
00:20
314
RSS
Нет комментариев. Ваш будет первым!