Из Википедии, свободной энциклопедии
  (Перенаправлено с WATFOR )
Перейти к навигации Перейти к поиску

WATFIV , или WAT erloo F ORTRAN IV , разработанный в Университете Ватерлоо , Канада, является реализацией языка компьютерного программирования Fortran . Это преемник WATFOR .

WATFIV использовался с конца 1960-х до середины 1980-х годов. На смену WATFIV, в свою очередь, пришли более поздние версии WATFOR. Благодаря тому, что она могла выполнить три обычных шага («компилировать-связать-идти») всего за один проход, система стала популярной для обучения студентов компьютерному программированию.

История [ править ]

В начале 1960-х годов недавно сформированные факультеты информатики начали университетские программы по преподаванию языков программирования . Язык Fortran был разработан в IBM , но страдал от медленного и подверженного ошибкам трехэтапного рабочего процесса пакетной обработки . [1] На первом этапе компилятор запускал исходный код и создавал объектный код . На втором этапе линкерпостроил полную программу, используя растущие библиотеки общих функций. Наконец, программа неоднократно выполнялась с данными для типичных научных и бизнес-задач клиентов. Каждый шаг часто включал новый набор перфокарт или ленты. У студентов же были совсем другие требования. Их программы, как правило, были короткими, но обычно содержали логические и синтаксические ошибки, что приводило к длительному повторению шагов и сбиванию с толку « дампов ядра » (часто требовался целый день, чтобы отправить и получить успешный или неудачный вывод от оператора компьютера) . Как только их программы работали правильно, они включались и больше не запускались.

В 1961 году Университет Висконсина разработал технологию FORGO для IBM 1620, которая объединила несколько этапов. [2] Подобные эксперименты были проведены в Университете Пердью на IBM 7090 в системе под названием PUFFT. [3]

WATFOR 7040 [ править ]

Летом 1965 года четыре студента Университета Ватерлоо , Гас Герман, Джеймс Г. Митчелл [4] [5] Ричард Ширли и Роберт Зарнке под руководством Питера Шанца разработали компилятор Fortran для компьютера IBM 7040 под названием WATFOR. Его целями были быстрая скорость компиляции и эффективная диагностика ошибок как во время компиляции, так и во время выполнения. [1] Это устраняет необходимость в отдельном этапе связывания, и, как следствие, программы FORTRAN, не содержащие синтаксических ошибок, сразу же запускаются. Профессор Дж. Уэсли Грэм руководил проектом. [6]

Этот простой, одноэтапный процесс позволял неопытным программистам изучать программирование с меньшими затратами времени и вычислительных ресурсов. [7] Для помощи в отладке компилятор использует новаторский подход к проверке неопределенных переменных (чрезвычайно распространенная ошибка начинающих программистов). Он использует диагностическую функцию 7040, которая может намеренно устанавливать для областей памяти плохую четность. Когда программа пытается ссылаться на переменные, которые не были установлены, машина выполняет прерывание (обрабатывается подпрограммами времени выполнения Watfor), и об ошибке сообщается пользователю как неопределенная переменная. Это имеет приятный побочный эффект, заключающийся в проверке неопределенных переменных практически без нагрузки на ЦП.

WATFOR быстро завоевал популярность, и более 75 организаций установили его на свои системы IBM 7040. Распространением компилятора занималась Сандра Брюс (урожденная Хоуп).

WATFOR 360 [ править ]

В 1966 году университет планировал заменить 7040 компьютером IBM System / 360 , который был намного быстрее, но несовместим с программным обеспечением. Для написания версии для IBM 360 была сформирована команда штатных сотрудников и студентов бакалавриата. [8] Участники проекта, Бетти Шмидт, Пол Дирксен, Пол Х. Кресс , Лотар К. «Нед» Кессельхут, Билл Киндри и Дерек Мик, к которым позже присоединились Майк Дойл, Род Милн, Рон Хердал и Линн Уильямс, завершили 360 WATFOR в начале 1967 года. Многие другие учреждения (университеты, колледжи, предприятия и правительственные учреждения) начали использовать компилятор WATFOR для удовлетворения потребностей, аналогичных тем, которые испытывались в Университете Ватерлоо. Распространением программного обеспечения и поддержкой клиентов занималась Сандра Уорд.

WATFIV [ править ]

В результате предложений группы пользователей SHARE, комитета Fortran и других, в 1968 году была выпущена новая версия под названием WATFIV. WATFIV представила новые функции, такие как переменные CHARACTER и прямой доступ к вводу-выводу. Ассоциация вычислительной техники представила Пол кресс и Пол Дирксены на Хоппер премию Грейс Мюррей за вклад в проекты WATFOR и WATFIV в 1972 г. [9] WATFIV компилятор был включен в Ролле DataPro Чести за 1975 и 1976. Человек участвуют в обслуживании и улучшение включало Берни Мерфи, Мартина Вайзмана и Ивонн Джонсон.

WATFIV произносится как «ЧТО ПЯТЬ», но, как было понято в то время, также (почти) все еще может произноситься как «ЗАЧЕМ», как в WAT-F-IV (Waterloo Fortran IV).

Университеты и корпорации использовали эти компиляторы, а ряд других программных продуктов был разработан в традициях WATFOR. Например, версия для языка программирования COBOL называется WATBOL . [10] [11] [12] Дэниел Д. Маккракен сказал, что «не будет преувеличением сказать, что WATFOR произвела революцию в использовании компьютеров в образовании». [13] В какой-то момент во всем мире было зарегистрировано более 3 000 лицензий на мини- и мэйнфреймы и более 100 000 лицензий на микрокомпьютеры для этого семейства программных продуктов.

WATFOR-11, -S и -11S [ править ]

В 1974 году для компьютера PDP-11 Digital Equipment Corporation был создан компилятор с характеристиками, аналогичными реализации IBM, и названный WATFOR-11. К членам группы, Джеку Шулеру, Джиму Уэлчу и Терри Уилкинсону, позже присоединился Ян Макфи, который добавил новые управляющие операторы в компилятор WATFIV для структурированного программирования (SP). Эти новые операторы включали блок IF (позже включенный в языковый стандарт ANSI X3.9-1978), WHILE, UNTIL и другие. WATFIV-S был анонсирован в 1974 году, а несколько месяцев спустя также был анонсирован WATFOR-11S (буква «S», обозначающая новые функции SP). Первоначальные функции SP были позже расширены дополнительными заявлениями Брюса Хэя в WATFIV-S в 1980 году и Джека Шулера в WATFOR-11S в 1981 году.

WATFOR-77 [ править ]

В течение 1970-х годов подкомитет ANSI X3J3 (группа языковых стандартов FORTRAN) разработал новый языковой стандарт, который был официально утвержден в апреле 1978 года. Этот стандарт, получивший обозначение FORTRAN 77 , ввел в язык много новых утверждений. Фактически, предыдущий стандарт языка FORTRAN 66 представляет собой очень небольшой документ и описывает, по сути, подмножество большинства реализаций FORTRAN. Например, реализации WATFIV и WATFOR-11 основаны на определении FORTRAN-IV IBM .

Поскольку программисты использовали возможности FORTRAN 77, потребовался новый компилятор, чтобы объединить преимущества компилятора WATFIV с новым стандартом языка. В январе 1983 года в Watcom Systems Inc. был начат проект разработки компилятора FORTRAN 77.. Под руководством Джека Шулера сотрудники Watcom и студенты программы Кооперативной информатики Университета Ватерлоо приняли участие в создании компилятора WATFOR-77. Основная работа была проделана Джено Коши, Фредом Кригером, Джоном Дамсом, Джимом Грэмом, Джеком Шулером, Энтони Скианом и Полом Ван Оршотом. Им помогали Род Кремаско, Джон МакКормик, Дэвид Макки и Брайан Стечер. Многие члены команды из бывших проектов компилятора внесли свой вклад. Среди них были Брюс Хэй, Ян Макфи, Сандра Уорд, Джим Уэлч и Терри Уилкинсон.

В отличие от предыдущих компиляторов, значительная часть WATFOR-77 была написана на языке переносимых систем, чтобы облегчить реализацию компилятора в других компьютерных системах. Ранее компиляторы WATFOR были полностью написаны на машинно-зависимом ассемблере.

Два компонента компилятора не переносимы. Генератор кода переводит операторы FORTRAN в инструкции собственного компьютера и сохраняет их в памяти. Первая версия WATFOR-77 генерирует инструкции для компьютерной архитектуры IBM 370. Большая часть поддержки во время выполнения (проверка неопределенных переменных, оценка нижнего индекса, встроенные функции) была написана на языке ассемблера для обеспечения хорошей производительности. В сентябре 1984 года первая версия была установлена ​​в Университете Ватерлоо для Департамента вычислительных услуг. Это была реализация для компьютеров IBM 370, работающих под управлением операционной системы VM / SP CMS .

Несколькими месяцами ранее, в мае 1984 года, начался проект по внедрению компилятора WATFOR-77 на персональном компьютере IBM . В этом проекте участвовали Джено Кошки, Фред Криггер, Тим Гэлвин, Атос Касапи, Джек Шулер, Терри Скоморовски и Брайан Стечер. В апреле 1985 года эта вторая версия WATFOR-77 была установлена ​​в Университете Ватерлоо для использования студентами инженерного факультета. Компилятор может работать на персональном компьютере IBM 256K с использованием IBM PC DOS 2.0 и не требует специального оборудования для операций с плавающей запятой.

Осенью 1985 года японская версия WATFOR-77 была доставлена ​​в IBM Japan для персонального компьютера IBM JX . Эта версия создает сообщения об ошибках на японском языке и поддерживает наборы символов кандзи, хирагана и катакана для имен переменных и строк символов. Для поддержки JX Справочное руководство по языку и Руководство пользователя были переведены на японский язык. Другая версия WATFOR-77 с теми же функциями, упомянутыми выше, также была разработана для японского семейства персональных компьютеров IBM PS / 55 весной 1988 года.

Летом 1986 года версия WATFOR-77 для IBM PC была адаптирована для работы на Unisys ICON, работающей под управлением операционной системы QNX . Поскольку QNX сильно отличается от IBM PC DOS, части системы времени выполнения были переписаны. Эта реализация WATFOR-77 была доступна в сентябре 1986 года.

Летом 1985 года был начат проект по адаптации WATFOR-77 к серии компьютеров VAX от Digital Equipment Corporation, работающих под управлением операционной системы VMS . Участниками этого проекта были Джено Коши, Марк Уэллетт, Джек Шулер и Терри Скоморовски. Эта реализация была доступна в марте 1987 года.

Также весной 1988 года был начат новый проект по разработке оптимизирующего компилятора FORTRAN 77. Этот компилятор использует генератор кода из компилятора Watcom C , который создает машинный код, превосходящий другие компиляторы C. Оптимизирующий компилятор FORTRAN 77 был впервые выпущен в середине 1990 года.

В октябре 1990 года компании WATFOR исполнилось 25 лет. [14] Многие участники разработки компиляторов WATFOR были приглашены в Университет Ватерлоо на встречу.

Весной 1992 года версия WATFOR-77 была адаптирована к семейству персональных компьютеров NEC PC-9801 . Эта версия была похожа на версию IBM PS / 55, но была изменена с учетом архитектурных различий. В январе 1992 года началась разработка 32-битной версии WATFOR-77 для персональных компьютеров Intel 80386 и Intel 80486 . Первая версия была отправлена ​​осенью 1992 года.

Еще в 1995 году занятия по программированию в WATFIV все еще проводились в Университете Миссисипи под руководством профессора Чарльза Х. (Чаки) Франке.

См. Также [ править ]

  • Watcom
  • Дональд Б. Гиллис (ранний последователь в Университете Иллинойса)

Ссылки [ править ]

  1. ^ а б Дональд Д. Коуэн; Дж. Уэсли Грэм (июль 1970 г.). «Конструктивные характеристики компилятора WATFOR». Уведомления ACM SIGPLAN: Материалы симпозиума по оптимизации компилятора . Ассоциация вычислительной техники . 5 (7): 41–44. DOI : 10.1145 / 390013.808481 .
  2. ^ Кларенс Б. Жермен (1965). Программирование IBM 1620 (2-е изд.). Прентис-Холл. п. 62.
  3. Сол Розен ; Роберт А. Сперджен; Джоэл К. Доннелли (ноябрь 1965 г.). "PUFFT - быстрый переводчик FORTRAN Университета Пердью". Коммуникации ACM . Ассоциация вычислительной техники . 8 (11): 661–666. DOI : 10.1145 / 365660.365671 .
  4. ^ «Java: Где вы хотите быть * завтра: доктор Джим Митчелл, 1997 г., получивший медаль Дж. В. Грэма в области вычислений и инноваций» . Университет Ватерлоо , Канада. 30 мая 1997 . Проверено 1 апреля 2011 года .
  5. ^ "Джеймс Митчелл" . Сотрудники Oracle Labs . Корпорация Oracle . Проверено 1 апреля 2011 года .
  6. Крис Редмонд (8 сентября 1999 г.). «Оплакивал пионер UW-вычислений» . UW Gazette . Университет Ватерлоо . Проверено 3 апреля 2011 года .
  7. ^ PC Brillinger; Д.Д. Коуэн (ноябрь 1970 г.). «Полный пакет для ознакомления с информатикой» . Бюллетень Ассоциации вычислительной техники SIGCSE. С. 118–126 . Проверено 18 декабря 2012 .
  8. ^ Гарольд Алкема и Кеннет Маклафлин (2007). «Разделение вычислений в Университете Ватерлоо» . Университет Ватерлоо . Проверено 5 апреля 2011 года .
  9. ^ "1972 - Пол Х. Кресс" . Премия Грейс Мюррей Хоппер . Ассоциация вычислительной техники . Архивировано из оригинала 4 мая 2012 года . Проверено 5 апреля 2011 года .
  10. ^ RJ Hurdal; WR Milne; CR Zarnke (1972). «ВАТБОЛ» . Университет Ватерлоо . Проверено 5 апреля 2011 года .
  11. ^ "Хронология - 1970-е: Эволюция Университета Ватерлоо продолжается - 1972" . Университет Ватерлоо . Проверено 17 декабря 2012 . В 1969 и 1970 годах компилятор WATBOL был завершен. Компилятор WATBOL для языка программирования COBOL имел диагностику скорости и ошибок, аналогичную компиляторам WATFOR для FORTRAN.
  12. ^ Кристофер Браун-Сайед (2011). Родители изобретений: Развитие систем автоматизации библиотек в конце 20-го века: Развитие систем автоматизации библиотек в конце 20-го века . ABC-CLIO . п. 10. ISBN 9781591587910. Проверено 17 декабря 2012 . В 1970-е годы Университет Ватерлоо, расположенный на юге Онтарио, Канада, был почти таким же синонимом вычислений, как Массачусетский технологический институт или Беркли. Он разработал расширения популярного языка программирования Fortran общего назначения под названием WATFOR и WATFIV, а также собственную версию не менее популярного языка бизнес-вычислений COBOL под названием WATBOL.
  13. ^ Дэниел Д. Маккракен (1972). Руководство по программированию на Fortran IV . Вайли. п. 253. ISBN. 978-0-471-58281-6.
  14. ^ "Серебряная годовщина WATFOR" . Новости WATCOM, том 8, номер 1 . 1991. Архивировано из оригинала 21 июля 2012 года . Проверено 1 апреля 2011 года .

Дальнейшее чтение [ править ]

  • Питер В. Шанц; RA немецкий; Джеймс Дж. Митчелл ; Ричард С.К. Ширли; К. Роберт Зарнке (январь 1967 г.). "WATFOR - компилятор FORTRAN IV Университета Ватерлоо". Коммуникации ACM . Ассоциация вычислительной техники . 10 (1): 41–44. DOI : 10.1145 / 363018.363059 .
  • Питер Джеймс Понзо (1992). Информатика в Ватерлоо: история празднования 25-летия, 1967–1992 . Университет Ватерлоо.
  • Пол Х. Кресс ; Пол Дирксен; Джеймс Уэсли Грэм (1968). FORTRAN IV с WATFOR . Прентис-Холл.
  • Поль Кресс (1968). Описание / 360 WATFOR: компилятор fortran-IV (PDF) . Кафедра прикладного анализа и информатики, Вычислительный центр, Университет Ватерлоо.
  • Пол Кресс; Пол Дирксен; Джеймс Уэсли Грэм (1970). FORTRAN IV с WATFOR и WATFIV . Прентис-Холл.
  • Пол Кресс; Пол Дирксен; Джеймс Уэсли Грэм (1 января 1980 г.). Структурированный FORTRAN с WATFIV-S . Прентис-Холл. ISBN 978-0-13-854752-3.

Внешние ссылки [ править ]

  • Откройте Watcom
  • История языков программирования: WATFOR