ВАТФИВ
Вся эта статья, возможно, содержит оригинальные исследования . ( сентябрь 2007 г. ) |
WATFIV , или WAT erloo FORTRAN , Канада , IV , разработанный в Университете Ватерлоо представляет собой реализацию Fortran языка компьютерного программирования . Это преемник WATFOR .
WATFIV использовался с конца 1960-х до середины 1980-х годов. На смену WATFIV, в свою очередь, пришли более поздние версии WATFOR. Поскольку она могла выполнить три обычных этапа («компиляция-связывание-переход») всего за один проход, система стала популярной для обучения студентов компьютерному программированию.
История
[ редактировать ]В начале 1960-х годов вновь созданные факультеты информатики начали университетские программы по преподаванию языков компьютерного программирования . Язык Фортран был разработан в IBM , но страдал от медленного и подверженного ошибкам трехэтапного процесса пакетной обработки . [1] На первом этапе компилятор запускал исходный код и создавал объектный код . На втором этапе компоновщик конструировал полную программу, используя растущую библиотеку общих функций. Наконец, программа неоднократно выполнялась с данными для типичных научных и бизнес-задач заказчиков. Каждый шаг часто включал новый набор перфокарт или ленты. У студентов, с другой стороны, были совсем другие требования. Их программы, как правило, были короткими, но обычно содержали логические и синтаксические ошибки, что приводило к трудоемкому повторению шагов и запутанным « дампам ядра » (часто требовался целый день, чтобы отправить и получить успешные или неудачные выходные данные от оператора компьютера). . Как только их программы работали правильно, их возвращали и больше не запускали.
В 1961 году Университет Висконсина технологию под названием FORGO, разработал для IBM 1620 которая объединила в себе некоторые этапы. [2] Подобные эксперименты проводились в Университете Пердью на IBM 7090 в системе под названием PUFFT. [3]
ВАТФОР 7040
[ редактировать ]Летом 1965 года четверо студентов Университета Ватерлоо Гас Джерман и Джеймс Г. Митчелл [4] [5] Ричард Ширли и Роберт Зарнке под руководством Питера Шанца разработали компилятор Фортрана для компьютера IBM 7040 под названием WATFOR. Его целями были высокая скорость компиляции и эффективная диагностика ошибок как во время компиляции, так и во время выполнения. [1] Это устраняет необходимость в отдельном этапе компоновки, и в результате программы FORTRAN, не содержащие синтаксических ошибок, передаются к немедленному выполнению. Профессор Дж. Уэсли Грэм руководил проектом. [6]
Этот простой одноэтапный процесс позволил неопытным программистам изучить программирование с меньшими затратами времени и вычислительных ресурсов. [7] Для облегчения отладки компилятор использует инновационный подход к проверке неопределенных переменных (чрезвычайно распространенная ошибка начинающих программистов). Он использует диагностическую функцию 7040, которая может намеренно устанавливать в областях памяти плохую четность. Когда программа пытается ссылаться на переменные, которые не были установлены, машина принимает прерывание (обрабатываемое процедурами времени выполнения Watfor), и пользователю сообщается об ошибке как неопределенная переменная. Это имеет приятный побочный эффект: проверка неопределенных переменных практически без нагрузки на процессор.
WATFOR быстро завоевал популярность, и более 75 учреждений установили его на свои системы IBM 7040. Распространением компилятора занималась Сандра Брюс (урожденная Хоуп).
ВАТФОР 360
[ редактировать ]В 1966 году университет планировал заменить 7040 компьютером IBM System/360 , который был намного быстрее, но несовместим с программным обеспечением. Для написания версии IBM 360 была сформирована команда штатных сотрудников и студентов бакалавриата. [8] Члены проекта, Бетти Шмидт, Пол Дирксен, Пол Х. Кресс , Лотар К. «Нед» Кессельхат, Билл Киндри и Дерек Мик, к которым позже присоединились Майк Дойл, Род Милн, Рон Хёрдал и Линн Уильямс, завершили 360 WATFOR в в начале 1967 года. Многие другие учреждения (университеты, колледжи, предприятия и правительственные учреждения) начали использовать компилятор WATFOR для удовлетворения потребностей, аналогичных тем, которые возникли в Университете Ватерлоо. Распространение программного обеспечения и поддержку клиентов осуществляла Сандра Уорд.
ВАТФИВ
[ редактировать ]В результате предложений комитета Fortran группы пользователей SHARE и других в 1968 году была выпущена новая версия под названием WATFIV. WATFIV представил новые функции, такие как переменные CHARACTER и ввод-вывод с прямым доступом. Ассоциация вычислительной техники вручила Полу Крессу и Полу Дирксену премию Грейс Мюррей Хоппер за вклад в проекты WATFOR и WATFIV в 1972 году. [9] Компилятор WATFIV был включен в Список почета DATAPRO за 1975 и 1976 годы. В число людей, занимавшихся обслуживанием и улучшением, входили Берни Мерфи, Мартин Уайзман и Ивонн Джонсон.
WATFIV произносилось как «WHAT FIVE», но, как было понятно в то время, его также (почти) можно было произносить как «WHAT FOR», как в WAT-F-IV (Waterloo Fortran IV).
Университеты и корпорации использовали эти компиляторы, и в традициях WATFOR был разработан ряд других программных продуктов. Например, версия языка программирования COBOL называется WATBOL . [10] [11] [12] Дэниел Д. Маккракен сказал: «Не будет преувеличением предположить, что WATFOR произвел революцию в использовании компьютеров в образовании». [13] В какой-то момент по всему миру было зарегистрировано более 3000 лицензий на мини- и мэйнфреймы и более 100 000 лицензий на микрокомпьютеры для этого семейства программных продуктов.
ВАТФОР-11, -С и -11С
[ редактировать ]был создан компилятор с характеристиками, аналогичными реализации IBM В 1974 году для компьютера Digital Equipment Corporation PDP-11 , и названный 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 году.
ВАТФОР-77
[ редактировать ]В 1970-х годах подкомитет ANSI X3J3 (группа языковых стандартов FORTRAN) разработал новый языковой стандарт, который был официально одобрен в апреле 1978 года. Этот стандарт, получивший обозначение FORTRAN 77 , ввел в язык множество новых утверждений. Фактически, предыдущий стандарт языка FORTRAN 66 представляет собой очень небольшой документ и описывает, по сути, подмножество большинства реализаций FORTRAN. Например, реализации WATFIV и WATFOR-11 основаны на определении FORTRAN-IV от IBM .
Поскольку программисты использовали возможности FORTRAN 77, потребовался новый компилятор, который объединил бы преимущества компилятора WATFIV с новым языковым стандартом. был начат проект по разработке компилятора FORTRAN 77 В январе 1983 года в компании Watcom Systems Inc . Под руководством Джека Шулера сотрудники Watcom и студенты бакалавриата программы Co-operative Computer Science Университета Ватерлоо приняли участие в создании компилятора 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. Этот компилятор использует генератор кода из компилятора C Watcom , который создает машинный код, превосходящий другие компиляторы C. Оптимизирующий компилятор FORTRAN 77 впервые был выпущен в середине 1990 года.
В октябре 1990 года отмечалось 25-летие ВАТФОР. [14] Многие, кто участвовал в разработке компиляторов WATFOR, были приглашены в Университет Ватерлоо на встречу.
Весной 1992 года версия WATFOR-77 была адаптирована для NEC PC-9801 семейства персональных компьютеров . Эта версия была похожа на версию IBM PS/55, но модифицирована с учетом архитектурных различий. В январе 1992 года началась разработка 32-битной версии WATFOR-77 для персональных компьютеров Intel 80386 и Intel 80486 . Первая версия была отправлена осенью 1992 года.
Еще в 1995 году занятия по программированию в WATFIV все еще проводились в Университете Миссисипи под руководством профессора Чарльза Х. (Чаки) Франке.
См. также
[ редактировать ]- Ватком
- Дональд Б. Гиллис (первопроходец в Университете Иллинойса)
Ссылки
[ редактировать ]- ^ Jump up to: а б Дональд Д. Коуэн; Дж. Уэсли Грэм (июль 1970 г.). «Расчетные характеристики компилятора WATFOR» . Примечания ACM SIGPLAN: Материалы симпозиума по оптимизации компилятора . 5 (7). Ассоциация вычислительной техники : 41–44. дои : 10.1145/390013.808481 .
- ^ Кларенс Б. Жермен (1965). Программирование IBM 1620 (2-е изд.). Прентис-Холл. п. 62.
- ^ Сол Розен ; Роберт А. Сперджен; Джоэл К. Доннелли (ноябрь 1965 г.). «PUFFT — быстрый переводчик FORTRAN Университета Пердью» . Коммуникации АКМ . 8 (11). Ассоциация вычислительной техники : 661–666. дои : 10.1145/365660.365671 . S2CID 1822147 .
- ^ «Java: где вы хотите *быть* завтра: доктор Джим Митчелл, 1997 г., лауреат медали Дж. В. Грэма в области вычислений и инноваций» . Университет Ватерлоо , Канада. 30 мая 1997 года . Проверено 1 апреля 2011 г.
- ^ «Джеймс Митчелл» . Сотрудники Oracle Labs . Корпорация Оракл . Проверено 1 апреля 2011 г.
- ^ Крис Редмонд (8 сентября 1999 г.). «Пионер вычислительной техники UW скорбит» . Газета UW . Университет Ватерлоо . Проверено 3 апреля 2011 г.
- ^ ПК Бриллинджер; Д. Д. Коуэн (ноябрь 1970 г.). «Полный пакет для внедрения информатики» . Бюллетень Ассоциации вычислительной техники SIGCSE. стр. 118–126 . Проверено 18 декабря 2012 г.
- ^ Гарольд Алкема и Кеннет Маклафлин (2007). «Разделение вычислений в Университете Ватерлоо» . Университет Ватерлоо . Проверено 5 апреля 2011 г.
- ^ «1972 – Пол Х. Кресс» . Премия Грейс Мюррей Хоппер . Ассоциация вычислительной техники . Архивировано из оригинала 4 мая 2012 года . Проверено 5 апреля 2011 г.
- ^ Р. Дж. Хурдал; В. Р. Милн; Ч. Р. Зарнке (1972). «ВАТБОЛ» . Университет Ватерлоо . Проверено 5 апреля 2011 г.
- ^
«Хронология – 1970-е годы: эволюция Университета Ватерлоо продолжается – 1972 год» . Университет Ватерлоо . Проверено 17 декабря 2012 г.
В 1969 и 1970 годах компилятор WATBOL был завершен. Компилятор WATBOL для языка программирования COBOL имел диагностику скорости и ошибок, аналогичную компиляторам WATFOR для FORTRAN.
- ^
Кристофер Браун-Сайед (2011). Родители изобретения: развитие систем автоматизации библиотек в конце 20 века: развитие систем автоматизации библиотек в конце 20 века . АВС-КЛИО . п. 10. ISBN 9781591587910 . Проверено 17 декабря 2012 г.
В 1970-е годы Университет Ватерлоо, расположенный на юге Онтарио, Канада, был почти таким же синонимом информатики, как Массачусетский технологический институт или Беркли. Компания разработала расширения к популярному языку программирования общего назначения Fortran под названием WATFOR и WATFIV, а также собственную версию не менее популярного языка бизнес-вычислений COBOL под названием WATBOL.
- ^ Дэниел Д. Маккракен (1972). Руководство по программированию на Фортране IV . Уайли. п. 253. ИСБН 978-0-471-58281-6 .
- ^ «Серебряный юбилей WATFOR» . Новости WATCOM, том 8, номер 1 . 1991. Архивировано из оригинала 21 июля 2012 года . Проверено 1 апреля 2011 г.
Дальнейшее чтение
[ редактировать ]- Питер В. Шанц; РА немецкий; Джеймс Дж. Митчелл ; Ричард С.К. Ширли; К. Роберт Зарнке (январь 1967 г.). «WATFOR — Компилятор FORTRAN IV Университета Ватерлоо». Коммуникации АКМ . 10 (1). Ассоциация вычислительной техники : 41–44. дои : 10.1145/363018.363059 . S2CID 14472718 .
- Питер Джеймс Понзо (1992). Информатика в Ватерлоо: история, посвященная 25-летию, 1967–1992 гг . Университет Ватерлоо.
- Пол Х. Кресс ; Пол Дирксен; Джеймс Уэсли Грэм (1968). ФОРТРАН IV с WATFOR . Прентис-Холл.
- Пол Кресс (1968). Описание /360 WATFOR: компилятор fortran-IV (PDF) . Кафедра прикладного анализа и информатики, Вычислительный центр Университета Ватерлоо.
- Пол Кресс; Пол Дирксен; Джеймс Уэсли Грэм (1970). FORTRAN IV с WATFOR и WATFIV . Прентис-Холл. ISBN 9780133294330 .
- Пол Кресс; Пол Дирксен; Джеймс Уэсли Грэм (1 января 1980 г.). Структурированный FORTRAN с WATFIV-S . Прентис-Холл. ISBN 978-0-13-854752-3 .