stringtranslate.com

Никлаус Вирт

Никлаус Эмиль Вирт (15 февраля 1934 г. – 1 января 2024 г.) был швейцарским ученым-компьютерщиком . Он разработал несколько языков программирования , включая Pascal , и стал пионером нескольких классических тем в области разработки программного обеспечения. В 1984 году он получил премию Тьюринга , общепризнанную как высшая награда в области компьютерных наук , «за разработку ряда инновационных языков программирования». [4]

Ранняя жизнь и образование

Никлаус Эмиль Вирт родился в Винтертуре , Швейцария, 15 февраля 1934 года. [5]

Он получил степень бакалавра наук (BS) в области электронной инженерии в Швейцарском федеральном технологическом институте Цюриха (ETH Zürich) в 1959 году. В 1960 году он получил степень магистра наук (M.Sc.) в Университете Лаваля в Квебеке . Затем в 1963 году он получил степень доктора философии в области электротехники и компьютерных наук (EECS) в Калифорнийском университете в Беркли под руководством пионера компьютерного дизайна Гарри Хаски . [6]

Карьера

С 1963 по 1967 год Вирт занимал должность доцента кафедры компьютерных наук в Стэнфордском университете и снова в Цюрихском университете . Затем в 1968 году он стал профессором информатики в ETH Zürich, взяв два годичных отпуска в Xerox PARC в Калифорнии (1976–1977 и 1984–1985). Он вышел на пенсию в 1999 году. [6]

Хотя Вирт принимал участие в разработке международных стандартов в области программирования и информатики, будучи членом Рабочей группы 2.1 по алгоритмическим языкам и исчислениям Международной федерации по обработке информации (IFIP) , [7] которая специфицировала , обслуживала и поддерживала языки программирования ALGOL 60 и ALGOL 68 , [8] он был разочарован обсуждениями в группах по стандартам и позже опубликовал свои языки как личную работу, в основном Pascal , Modula-2 и Oberon .

В 2004 году он стал членом Музея компьютерной истории «за основополагающую работу в области языков программирования и алгоритмов, включая Euler, Algol-W, Pascal, Modula и Oberon». [9]

Языки программирования

Вирт в 1969 году

Вирт был главным разработчиком языков программирования Euler (1965), PL360 (1966), ALGOL W (1966), Pascal (1970), [10] Modula (1975), Modula-2 (1978), [6] Oberon (1987), Oberon-2 (1991) и Oberon-07 (2007). [11] Он также был основной частью команды по проектированию и внедрению операционных систем Medos-2 (1983, для рабочей станции Lilith ), [12] и Oberon (1987, для рабочей станции Ceres ), [13] [14] и для цифровой системы проектирования и моделирования оборудования Lola (1995) . [15] [16]

В 1984 году Вирт получил премию Тьюринга Ассоциации вычислительной техники (ACM) за разработку этих языков. [17] В 1994 году он был принят в члены ACM. [18]

В 1999 году он получил премию ACM SIGSOFT за выдающиеся научные исследования [19].

Закон Вирта

В 1995 году он популяризировал поговорку, которая теперь называется законом Вирта . В своей статье 1995 года «Призыв к бережливому программному обеспечению» он приписал Мартину Райзеру следующее, сформулировав его так: «Программное обеспечение становится медленнее быстрее, чем оборудование становится быстрее». [20]

Публикации

Статья «Program Development by Stepwise Refinement» в апреле 1971 года в Communications of the ACM [21] [22], посвященная преподаванию программирования, считается классическим текстом по программной инженерии. [23] Эта статья считается самой ранней работой, в которой формально излагается метод проектирования программ «сверху вниз» . [24] [25] Статья обсуждалась Фредом Бруксом в его влиятельной книге «The Mythical Man-Month» и была названа «основополагающей» в краткой биографии Вирта, опубликованной ACM в связи с его премией Тьюринга. [26] [27]

Учебник 1973 года « Систематическое программирование: введение» [ 28] был описан как качественный источник для математиков, желающих понять природу программирования, в обзоре 1974 года. [29] На обложке издания 1973 года говорилось, что книга «... предназначена для людей, которые рассматривают курс по систематическому построению алгоритмов как часть своей базовой математической подготовки, а не для непосредственных нужд тех, кто хочет иметь возможность время от времени кодировать задачу и передавать ее своему компьютеру для мгновенного решения». [30] Описанный в обзоре как сложный для проработки текст, он, тем не менее, был рекомендован в качестве полезного чтения для тех, кто интересуется численной математикой. [31]

В 1974 году «Руководство пользователя и отчет по языку Pascal» [32] , написанные совместно [i] с Кэтлин Дженсен [35], послужили основой для многих усилий по реализации языка в 1970-х годах ( BSD Pascal [36] ) и 1980-х годах в Соединенных Штатах и ​​по всей Европе. [37] [38]

В 1975 году он написал книгу «Алгоритмы + Структуры данных = Программы» , которая получила широкое признание. [39] Основные редакции этой книги с новым названием «Алгоритмы и структуры данных» были опубликованы в 1986 и 2004 годах. [40] [41] Примеры в первом издании были написаны на языке Паскаль. В более поздних изданиях они были заменены примерами, написанными на языках Modula-2 и Oberon соответственно. [40] [41]

В 1992 году Вирт и Юрг Гуткнехт опубликовали полную документацию операционной системы Oberon. [42] Вторая книга, написанная Мартином Райзером, была задумана как руководство по программированию. [43]

Смерть

Вирт умер в первый день Нового года 2024 года в возрасте 89 лет. [44]

Смотрите также

Примечания

  1. ^ Первая глава (Документация) — совместная работа, которую, по словам Йенсена, редактировал Вирт. [33] Вторая глава написана Виртом (также опубликована отдельно [34] ).

Ссылки

  1. ^ "IEEE Emanuel R. Piore Award Recipients" (PDF) . IEEE . Архивировано из оригинала (PDF) 24 ноября 2010 г. . Получено 20 марта 2021 г. .
  2. ^ "Niklaus Wirth 2004 Fellow". Computer History Museum . Архивировано из оригинала 3 июля 2019 года . Получено 1 декабря 2017 года .
  3. ^ Gosch, John (25 октября 1979 г.). Weber, Samuel (ред.). «Wirth works to better Pascal» (PDF) . Профиль. Электроника . Paul W. Reiss. стр. 157. ISSN  0013-5070. Архивировано (PDF) из оригинала 20 мая 2024 г. . Получено 14 августа 2024 г. . [его семья] включает двух девочек и мальчика
  4. ^ "Никлаус Э. Вирт - лауреат премии имени А. М. Тьюринга". Ассоциация вычислительной техники. 2019. Архивировано из оригинала 29 июня 2017 года . Получено 8 января 2024 года .
  5. ^ Хендерсон, Гарри (2009). "Вирт, Никлаус". Энциклопедия компьютерных наук и технологий . Infobase Publishing. стр. 514. ISBN 978-1-4381-1003-5.
  6. ^ abc Pomberger, Gustav; Mössenböck, Hanspeter; Rechenberg, Peter (2000). "Никлаус Вирт - пионер компьютерных наук". Школа Никлауса Вирта: искусство простоты . Gulf Professional Publishing. стр. 6. ISBN 978-3-932588-85-3.
  7. ^ Jeuring, Johan; Meertens, Lambert ; Guttmann, Walter (17 августа 2016 г.). "Профиль рабочей группы IFIP 2.1". Foswiki . Архивировано из оригинала 8 марта 2021 г. Получено 4 октября 2020 г.
  8. ^ Свирстра, Доайтсе; Гиббонс, Джереми ; Меертенс, Ламберт (2 марта 2011 г.). «Область применения: IFIP21: Foswiki». Фосвики . Архивировано из оригинала 2 сентября 2018 года . Проверено 4 октября 2020 г.
  9. ^ "Niklaus Wirth: 2004 Fellow". Computer History Museum (CHM) . Архивировано из оригинала 3 июля 2019 . Получено 15 октября 2019 .
  10. ^ Петцольд, Чарльз (9 сентября 1996 г.). «Языки программирования: выжившие и желающие». The New York Times . ISSN  0362-4331. Архивировано из оригинала 9 марта 2018 г. Получено 8 марта 2018 г.
  11. ^ Вирт, Никлаус (3 мая 2016 г.). Язык программирования Oberon-07 (PDF) . ETH Zurich, Department of Computer Science (Report). Архивировано (PDF) из оригинала 21 января 2021 г. . Получено 17 января 2021 г. .
  12. ^ Кнудсен, Свенд Эрик (1983). Medos-2: операционная система, ориентированная на Modula-2, для персонального компьютера Lilith (докторская диссертация). ETH Zurich. doi :10.3929/ethz-a-000300091. hdl :20.500.11850/137906. Архивировано из оригинала 4 января 2024 года . Получено 4 января 2024 года . Я признателен профессору Н. Вирту за идею и координацию проекта Lilith, за предоставленную мне возможность разработать и реализовать операционную систему Medos-2 и за руководство этой диссертацией.
  13. ^ Франц, Михаэль (2000). «Оберон: Незамеченная драгоценность». В Böszörményi, László (ред.). Школа Никлауса Вирта: Искусство простоты. Gulf Professional Publishing. стр. 42, 45. ISBN 978-3-932588-85-3.
  14. ^ Proven, Liam (29 марта 2022 г.). «Дикий мир операционных систем, отличных от C». The Register . Получено 4 апреля 2024 г.
  15. ^ Вирт, Никлаус (1995). Проектирование цифровых схем. Springer.
  16. ^ Эберле, Ганс (2000). «Проектирование кластерной сети». В Бёсёрменьи, Ласло (ред.). Школа Никлауса Вирта: искусство простоты. Профессиональное издательство Персидского залива. п. 154. ИСБН 978-3-932588-85-3. Этот класс также вдохновил Никлауса на разработку простого, но мощного языка описания оборудования под названием Lola. Никлаус всегда сам создавал системы, которые он либо исследовал, либо обучал, поскольку он знал, что это единственный способ сохранить честность и надежность инженера.
  17. ^ Хейг, Томас (1984). "Никлаус Э. Вирт". Премия имени А. М. Тьюринга . Ассоциация вычислительной техники. Архивировано из оригинала 19 сентября 2017 года . Получено 15 октября 2019 года .
  18. ^ "ACM Fellows by year". acm.org . Архивировано из оригинала 3 января 2024 года . Получено 3 января 2024 года .
  19. ^ "Премия за выдающиеся исследования". SIGSOFT . Получено 1 апреля 2024 г.
  20. ^ Вирт, Никлаус (февраль 1995 г.). «Призыв к бережливому программному обеспечению». Компьютер . 28 (2): 64–68. doi :10.1109/2.348001. S2CID  44803077.
  21. ^ Вирт, Разработка программы путем пошагового усовершенствования, Communications of the ACM,. 14:221–227, ACM Press, 1971
  22. ^ Вирт, Никлаус (2001). «Разработка программ путем пошагового усовершенствования». В Broy, Manfred; Denert, Ernst (ред.). Pioneers and Their Contributions to Software Engineering . Берлин, Гейдельберг: Springer. doi :10.1007/978-3-642-48354-7. ISBN 978-3-642-48355-4. S2CID  11348419.
  23. ^ Gehani, Narain (1991). Ada: Параллельное программирование. Silicon Press. стр. 209. ISBN 978-0-929306-08-7.
  24. ^ Гилл, Насиб Сингх. Программная инженерия. Khanna Publishing House. стр. 192. ISBN 978-81-906116-3-3.
  25. ^ Дули, Джон Ф. (25 ноября 2017 г.). Разработка программного обеспечения, проектирование и кодирование: с шаблонами, отладкой, модульным тестированием и рефакторингом. Apress. стр. 54. ISBN 978-1-4842-3153-1.
  26. ^ Брукс, Фредерик П. (Фредерик Филлипс) (1975). Мифический человеко-месяц. Рединг, Массачусетс. : Addison-Wesley Pub. Co. стр. 143. ISBN 978-0-201-00650-6.
  27. ^ "Никлаус Вирт: Лауреат премии Тьюринга ACM AM 1984 года". Сообщения ACM . 28 (2). Февраль 1985. doi :10.1145/1283920.1283941.
  28. ^ Вирт, Никлаус (8 января 1973 г.). Систематическое программирование: Введение . Prentice-Hall. ISBN 0-13-880369-2.
  29. ^ Абрахамс, Пол; Вирт, Никлаус (июль 1974 г.). «Систематическое программирование: введение». Математика вычислений . 28 (127): 881. doi :10.2307/2005728. JSTOR  2005728.
  30. ^ Вирт, Никлаус (1973). "Cover flap". Систематическое программирование: Введение . Prentice-Hall. ISBN 0-13-880369-2.
  31. ^ Абрахамс, Пол (июль 1974 г.). «Систематическое программирование: Введение Никлауса Вирта». Математика вычислений . 28 (127). Американское математическое общество : 881–883. doi :10.2307/2005728. JSTOR  2005728.
  32. ^ Руководство пользователя и отчет по языку Паскаль, второе издание.
  33. ^ "Выступление Кэтлин Дженсен на симпозиуме Вирта (20.02.2014)". YouTube . 25 февраля 2014 г. Архивировано из оригинала 6 января 2024 г. Получено 6 января 2024 г.
  34. ^ Вирт, Никлаус (1973). Язык программирования Паскаль (пересмотренный отчет) (Отчет). ETH Zurich. стр. 49 с. doi :10.3929/ethz-a-000814158. hdl :20.500.11850/68910.
  35. ^ * https://www.researchgate.net/scientific-contributions/Kathleen-Jensen-2058521472 Архивировано 6 января 2024 г. на Wayback Machine
    • https://dl.acm.org/profile/81334487416 Архивировано 6 января 2024 г. на Wayback Machine
    • https://dblp.org/pid/06/5848.html Архивировано 6 января 2024 г. на Wayback Machine
  36. ^ Джой, Уильям Н.; Грэм, Сьюзан Л.; Хейли, Чарльз Б. (1979). Руководство пользователя Berkeley Pascal, версия 1.1, апрель 1979 г. Калифорнийский университет в Беркли. Кафедра электротехники и компьютерных наук. Архивировано из оригинала 8 января 2024 г. . Получено 8 января 2024 г. .
  37. ^ Blotnick, Srully (июль 1983 г.). «Don't Fail Me Now» (PDF) . Pascal News (26): 26. Архивировано (PDF) из оригинала 5 января 2024 г. . Получено 3 января 2024 г. .
  38. ^ Hartel, Pieter H. (май 1982). "Pascal для системных программистов" (PDF) . ECODU-32. Архивировано (PDF) из оригинала 22 марта 2020 г. Получено 3 января 2024 г.
  39. ^ Цитаты, собранные Ассоциацией вычислительной техники (ACM)
  40. ^ ab Wirth, Niklaus (1986). "Предисловие к изданию 1986 года". Алгоритмы и структуры данных . Prentice-Hall. стр. 9. ISBN 978-0-13-022005-9. Главное изменение, которое пронизывает весь текст, касается языка программирования, используемого для выражения алгоритмов. Pascal был заменен на Modula-2 .
  41. ^ ab Wirth, Niklaus. "Алгоритмы и структуры данных" (PDF) . ETH Zürich. Архивировано (PDF) из оригинала 17 апреля 2021 г. . Получено 4 января 2024 г. . © N. Wirth 1985 (версия Oberon: август 2004 г.).
  42. ^ Вирт, Никлаус ; Гуткнехт, Юрг (1992). Проект Оберон: Проектирование операционной системы и компилятора (PDF) . Addison-Wesley, ACM Press. ISBN 978-0-201-54428-2. Архивировано из оригинала (PDF) 12 апреля 2013 года.Распродано. Онлайн-версия 2-го издания Архивировано 5 апреля 2014 г. на Wayback Machine . Издание 2005 г., PDF. Архивировано 8 июля 2021 г. на Wayback Machine
  43. ^ Рейзер, Мартин; Вирт, Никлаус (1992). Программирование в Oberon: Шаги за пределы Pascal и Modula (PDF) . Addison-Wesley, ACM Press. ISBN 978-0-201-56543-0. Архивировано из оригинала (PDF) 16 апреля 2016 г. . Получено 1 июня 2017 г. .. Больше не издается.
  44. ^ Proven, Liam (4 января 2024 г.). "RIP: Software design pioneer and Pascal creator Niklaus Wirth". The Register . Архивировано из оригинала 7 января 2024 г. . Получено 6 января 2024 г. .

Дальнейшее чтение

Внешние ссылки