никлаус вирт годы жизни

Никлаус Вирт: 80-летие классика программирования

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни

15 февраля исполняется 80 лет выдающемуся швейцарскому учёному и инженеру — Никлаусу Вирту (Niklaus Wirth), лауреату премии Тьюринга — самой престижной премии в компьютерных науках, аналога Нобелевки.

Знаменитый профессор Высшей политехнической школы ETH из Цюриха, где учились Альберт Эйнштейн (1896) и Джон фон Нейман (1923).

Его знают как автора классического Паскаля (1970), но многие даже понятия не имеют, что было десятилетиями позже. Что его разработки во многом инициировали создание Java и C#. Что нынешние космические спутники, новейшие беспилотники и безупречные по качеству швейцарские железные дороги работают благодаря его блестящей инженерной мысли.

Именно он всей своей жизнью показал путь борьбы с надуманной сложностью, которая не только окружает нас повсеместно, но и стала уже смертельно опасной болезнью нынешней цивилизации.

Наша эпоха — время диктатуры воинствующих дилетантов. И в программировании классика тоже уступает арену коммерчески изуродованной индустриальной «попсе».

Истинное величие И.С.Баха человечество благодаря Феликсу Мендельсону оценило спустя почти сто лет после его смерти. Надеюсь, мудрого профессора Никлауса Вирта — компьютерного Баха — люди оценят по достоинству всё же немного раньше.

Юбилей Никлауса Вирта — очень хорошая проверка на компетентность не только российских СМИ, но и мировых.

Руслан Богатырёв. 15.02.2014, Москва

Профессор Никлаус Вирт (Niklaus K. Wirth), автор языка Паскаль, закончил Швейцарский федеральный технологический институт ETH (Eidgenoessische Technische Hochschule) в родном Цюрихе (1958). В Лавальском университете в Квебеке (Канада) он получил степень магистра (1960). В 1963 г. в Университете Калифорнии в Беркли (США) Вирт под руководством профессора Гарри Хаски реализовал расширение Алгола-60 (язык Euler) и защитил диссертацию. В 1963–1967 гг. Вирт преподавал в Стенфордском университете (США). В это же время он был приглашен в международную экспертную группу IFIP Working Group 2.1, занимавшуюся проектированием языка Алгол-68.

В 1967 г. Вирт вернулся на родину и стал доцентом Университета Цюриха. В 1968 г. он перешел в ETH Zurich, где занялся разработкой языка Паскаль. В 1970 г. был завершен первый компилятор Паскаля. В период 1978–1981 гг. Вирт возглавлял проект, в результате которого был разработан язык Модула-2, ориентированный на него 16-разрядный персональный компьютер Лилит (Lilith) и ОС Medos. Все ПО, включая системное, было полностью реализовано на Модуле-2. В 1984 г. Никлаус Вирт за большой вклад в развитие языков программирования и за создание персонального компьютера Лилит был удостоен премии Алана Тьюринга (The ACM A.M.Turing Award) – самой престижной и почётной в компьютерном мире, которая по своему значению стоит в одном ряду с Нобелевской премией.

В период 1986–1989 гг. Вирт вёл проект по созданию нового языка Oberon, расширяемой объектно-ориентированной ОС Oberon и 32-разрядной рабочей станции Ceres. Многие идеи того проекта были положены сотрудниками Sun Labs в основу языка и технологии Java.

С 1990 г. профессор Вирт руководил Институтом компьютерных систем при ETH Zurich. В 1999 г. он ушёл на заслуженный отдых и стал почётным профессором родного ETH Zurich.

Видеоинтервью
1. Niklaus Wirth on Teaching Computer Science. IEEE Computer Society, 2012.

Источник

Никлаус Вирт

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни

Содержание

Биография

Никлаус Вирт родился 15 февраля 1934 года в Винтертуре, в предместье Цюриха (Швейцария). Родители — Уолтер и Хедвиг Вирт. Отец Никлауса был школьным учителем.

В детстве Никлаус Вирт увлекался авиамоделизмом и постройкой ракет, увлечение электроникой и системами программного управления началось с разработки устройств дистанционного управления для моделей. В 1954 году поступил на факультет электроники Швейцарского федерального технологического института (ETH) в Цюрихе, где за четыре года получил степень бакалавра по электротехнике. Продолжил обучение в Лавальском университете (Квебек, Канада), в 1960 году получил степень магистра. Затем был приглашён в университет Калифорнии в Беркли (США), где в 1963 году, под руководством профессора Хаски, защитил диссертацию, темой которой стал язык программирования Эйлер (Euler) — расширение Алгола средствами языка Лисп.

Диссертация Вирта была замечена сообществом разработчиков языков программирования, и в том же 1963 году он был приглашён в Комитет по стандартизации Алгола IFIP (Международной федерации информатики), который разрабатывал новый стандарт языка Алгол, впоследствии ставший Алголом-68. Вместе с Чарльзом Хоаром Вирт отстаивал в комитете линию на разработку умеренно модифицированной версии Алгола, свободной от недостатков исходного языка и дополненной минимумом действительно необходимых средств. Вирт и Хоар представили комитету язык Algol-W (W — от Wirth), представлявший собой именно такую переработку Алгола, но поддержки не встретили. По завершении работы комитета в 1968 году Вирт вошёл в число тех, кто критиковал Алгол-68, говоря о его недостаточной надёжности и чрезвычайной избыточности. Параллельно, с 1963 по 1967 годы Вирт работал ассистентом в Стэнфордском университете, США. Вместе с Джимом Уэльсом разработал и реализовал язык PL/360, предназначеннвый для программирования на платформе IBM/360 — алголоподобный язык, в который был введён ряд системно-зависимых возможностей, связанных с архитектурой IBM/360.

В 1967 году вернулся в звании доцента в университет Цюриха, в 1968 году получил в ETH звание профессора компьютерных наук. В течение 31 года работал в ETH. Много занимался организационной деятельностью, совершенствуя систему обучения своего университета.

В 1970 году создал язык программирования Паскаль. В 1970-х годах разработал, вместе с Ч. Хоаром и Э. Дейкстрой технологию структурного программирования. Вышедшая в 1971 году статья Вирта «Разработка программы методом пошагового уточнения» описала и обосновала ставшую впоследствии классической методологию разработки программного обеспечения «сверху вниз». Для переноса Паскаль-системы на различные вычислительные платформы в 1973 году с участием Вирта был разработан прототип виртуальной машины, исполняющей на любой платформе промежуточный «пи-код», в который предполагалось компилировать все программы.

В 1975 году разработал язык Модула, в котором реализовал идеи разработки модульных программ с хорошо определёнными межмодульными интерфейсами и параллельного программирования. Кроме того, в Модуле был изменён синтаксис языка — Вирт избавился от унаследованной ещё от Алгола-60 необходимости применять составные операторы в конструкциях ветвления и циклах. Модула не была широко известна и имела всего одну экспериментальную реализацию, но её доработанная версия — Модула-2, разработка которой началась в 1977 и закончилась в 1980 году, предназначенная для реализации системного ПО разрабатываемой в ETH системы Lilith — 16-разрядного персонального компьютера, стала известна и довольно популярна, хотя и не превзошла по популярности Паскаль, особенно его коммерческие реализации фирмы Borland. Система Lilith обогнала тенденции компьютерной индустрии на несколько лет, позднее Вирт с сожалением говорил, что, не реализовав потенциал этой системы, швейцарская компьютерная индустрия упустила свой исторический шанс. Развитием Модулы-2 стал язык Модула-3, разработанный совместно фирмами DEC и Olivetti; в его создании Вирт участия не принимал.

Во второй половине 1970-х Вирт участвовал в конкурсе министерства обороны США на разработку нового языка для программирования встроенных систем, в результате которого был создан язык Ада. Повторилась история с Алголом-68 — проект группы, в которой работали Вирт и Хоар, не был одобрен комитетом по языку. В итоге конкурс выиграл проект, основанный на Паскале, но гораздо более сложный и объёмный.

С 1982 по 1984 и с 1988 по 1990 годы Вирт возглавлял факультет компьютерных наук ETH, с 1990 года — Институт компьютерных систем при ETH.

В 1988 году в содружестве с Юргом Гуткнехтом (Jurg Gutknecht) Вирт разработал язык программирования Оберон. Целью разработки было создание языка для реализации системного ПО проектируемой новой рабочей станции. Основой для Оберона стала Модула-2, которую существенно упростили, но при этом дополнили новыми возможностями.

В 1992 году Вирт и Мёссенбёк выпустили сообщение о новом языке программирования — Оберон-2, — минимально расширенной версии Оберона. В этом же году была образована дочерняя компания ETH — Oberon microsystems, которая занялась разработкой Оберон-систем. Вирт стал одним из членов её совета директоров. В 1999 году эта компания выпустила следующую версию Оберона — Component Pascal, более приспособленную для компонентного программирования. В 1996 году Вирт разработал ещё один оригинальный язык программирования — Lola, предназначенный для разработки настраиваемых электронных схем.

1 апреля 1999 года Вирт вышел на пенсию, достигнув предельного для государственного служащего в Швейцарии возраста 65 лет (ETH — государственный ВУЗ, его работники являются госслужащими и их работа подчиняется соответствующему законодательству).

Член национальных академий: Swiss Academy of Engineering (Швейцария), U.S. Academy of Engineering (США), Berlin-Brandenburg Academy (Германия).

Премии и награды

Достижения

Вирт разработал или участвовал в разработке языков программирования: Euler, Algol-W, PL/360, Pascal, Modula, Modula-2, Oberon, Oberon-2, Component Pascal. Наиболее известная его разработка, безусловно — язык программирования Паскаль, оказавший огромное влияние на несколько поколений программистов и ставший базой для создания большого числа языков программирования. Ещё одна фундаментальная работа, участником которой стал Вирт — разработка технологии структурного программирования, ставшая в программировании, безусловно, самой сильной формализацией как минимум 1970-х — 1980-х годов. Эта технология разработана, обоснована и внедрена в жизнь всего тремя выдающимися людьми — Виртом, Дейкстрой и Хоаром.

Научные принципы

Возможно, одним из наиболее точных выражений принципов, которых придерживается Вирт в разработке всех своих проектов, является фраза Эйнштейна, вынесенная в эпиграф к «Сообщению о языке Оберон»: «Делай просто, насколько возможно, но не проще этого». Во всех его работах прослеживается изначальная ориентированность на реализацию наиболее эффективного решения конкретной инженерной задачи на базе гарантированно работающего, математически обоснованного инструментария. Вирт твёрдо стоит на том, что программирование должно быть нормальной инженерной дисциплиной, гарантирующей достаточный уровень надёжности своих разработок. Достижение же надёжности возможно, по Вирту, только одним способом: максимально возможным упрощением и самих систем, и инструментов, которые используются для их создания. В соответствии с этим принципом языки и системы программирования, разрабатываемые Виртом, всегда были образцом «разумной достаточности», даже своего рода аскетичности — в них предусматривалось только то, без чего нельзя обойтись.

Вирт часто критикует «американский подход» к разработке средств программирования, в котором маркетинговые соображения превалируют над требованиями математической стройности и гарантированной надёжности, и каждое новое модное поветрие сопровождается некритичным внесением в языки программирования новых синтаксических элементов. Это приводит к неправильной оценке роли некоторых идей и, в конечном итоге, к неправильной расстановке приоритетов в разработке ПО. В частности, говоря об ООП, Вирт неоднократно отмечал, что оно является достаточно тривиальным расширением того же структурного подхода, сдобренным новой терминологией, и вряд ли может претендовать на звание «революционной методологии программирования». Известно ехидное замечание Вирта по поводу привычки американцев к антропоцентризму в терминологии: «Они называют расширение типа „наследованием“, но, вообще-то, наследство обычно переходит к потомку только тогда, когда предок умирает».

Ещё один принцип, которым всегда руководствовался Вирт, можно сформулировать так: «Инструмент должен соответствовать задаче. Если инструмент не соответствует задаче, нужно придумать новый, который бы ей соответствовал, а не пытаться приспособить уже имеющийся». Он не приветствует разработку «языков, универсальных вообще». Каждая разработанная Виртом система имела чётко сформулированное назначение, область применения, и он всегда без колебаний исключал из разработки всё, что не было нужно для данного конкретного назначения.

Книги

Изданы на русском языке :

Книга Вирта «Алгоритмы + структуры данных = программы» издавалась на русском языке несколько раз в разных вариантах и считается первым из трёх классических учебников по структурному программированию.

В настоящее время вся классическая трилогия Вирта переведена его учениками на язык Оберон и доступна для скачивания из Сети в виде

Примечания

Ссылки

Перлис (1966) • Уилкс (1967) • Хэмминг (1968) • Минский (1969) • Уилкинсон (1970) • Маккарти (1971) • Дейкстра (1972) • Бахман (1973) • Кнут (1974) • Ньюэлл / Саймон (1975) • Рабин / Скотт (1976) • Бэкус (1977) • Флойд (1978) • Айверсон (1979) • Хоар (1980) • Кодд (1981) • Кук (1982) • Томпсон / Ритчи (1983) • Вирт (1984) • Карп (1985) • Хопкрофт / Тарьян (1986) • Кок (1987) • Сазерленд (1988) • Кэхэн (1989) • Корбато (1990) • Милнер (1991) • Лэмпсон (1992) • Хартманис / Стернс (1993) • Фейгенбаум / Редди (1994) • Блюм (1995) • Пнуели (1996) • Энгельбарт (1997) • Грей (1998) • Брукс (1999) • Яо (2000) • Даль / Нигаард (2001) • Ривест / Шамир / Адлеман (2002) • Кэй (2003) • Серф / Кан (2004) • Наур (2005) • Аллен (2006) • Кларк / Эмерсон / Сифакис (2007) • Лисков (2008)

Разработка программного обеспеченияШаги процессаАнализ требований • Проектирование программного обеспечения • Программирование • Формальные методы • Тестирование программного обеспечения • Внедрение программного обеспечения • Сопровождение программного обеспеченияКонцепцииМоделирование данных • Архитектура программного обеспечения • Functional specification • Язык моделирования • Парадигма программирования • Программное обеспечение • Архитектура программного обеспечения • Методология разработки программного обеспечения • Цикл разработки программного обеспечения • Качество программного обеспечения • Обеспечение качества программного обеспечения • Структурный анализ программного обеспеченияНаправленияГибкая методология разработки • Аспектно-ориентированное программирование • Объектно-ориентированное программирование • Проблемно-ориентированное программирование • Онтология • Сервисно-ориентированная архитектура • Цикл разработки программного обеспеченияМодели

Модели разработки: Гибкая методология разработки • Cleanroom • Итеративная разработка • RUP • Scrum • MSF • Спиральная модель • Модель водопада • XP • : CMMI • Модель данных • Function model • UMLВыдающиеся
деятелиKent Beck • Гради Буч • Фред Брукс • Barry Boehm • Уорд Каннингем • Оле-Йохан Даль • Tom DeMarco • Эдсгер Вибе Дейкстра • Дональд Кнут • Мартин Фаулер • Чарльз Энтони Ричард Хоар • Watts Humphrey • Michael A. Jackson • Ivar Jacobson • Craig Larman • James Martin • Bertrand Meyer • David Parnas • Winston W. Royce • James Rumbaugh • Никлаус Вирт • Эдвард ЙорданСвязанные
статьиИнформатика • Компьютерная инженерия • Организационная инженерия • История разработки ПО • Конфигурационное управление • Менеджмент • Документирование • Математика • Управление проектами • Управление программами • Всеобщее управление качеством • Эргономика • Системотехника • Обратная разработка

Полезное

Смотреть что такое «Никлаус Вирт» в других словарях:

Вирт, Никлаус — Никлаус Вирт Niklaus E. Wirth … Википедия

Вирт Никлаус — Н.Вирт во время визита в Россию (Уральский университет, 2005) Н.Вирт (1969) Никлаус Вирт (нем. Niklaus Wirth, род. 15 февраля 1934) швейцарский учёный, специалист в области информатики, один из известнейших теоретиков в области разработки языков… … Википедия

Вирт Н. — Н.Вирт во время визита в Россию (Уральский университет, 2005) Н.Вирт (1969) Никлаус Вирт (нем. Niklaus Wirth, род. 15 февраля 1934) швейцарский учёный, специалист в области информатики, один из известнейших теоретиков в области разработки языков… … Википедия

Николаус Вирт — Н.Вирт во время визита в Россию (Уральский университет, 2005) Н.Вирт (1969) Никлаус Вирт (нем. Niklaus Wirth, род. 15 февраля 1934) швейцарский учёный, специалист в области информатики, один из известнейших теоретиков в области разработки языков… … Википедия

Оберон (язык программирования) — У этого термина существуют и другие значения, см. Оберон. Oberon Класс языка: императивный, структурированный, модульный Появился в: 1986 Автор(ы) … Википедия

Хронология языков программирования — Списки языков программирования По категориям Хронологический Генеалогический Хронология языков программирования упорядоченный в хронологическом порядке список языков программирования. Содержание … Википедия

Хронология развития вычислительной техники — Паскалина Блеза Паскаля (1640) … Википедия

Модула-2 — Modula 2 Класс языка: императивный, структурированный, модульный, data and method hiding Появился в: 1978 Автор(ы): Никлаус Вирт Типизация данных: статическая, сильная … Википедия

Парадигма — (Paradigm) Определение парадигмы, история возникновения парадигмы Информация об определении парадигмы, история возникновения парадигмы Содержание Содержание История возникновения Частные случаи (лингвистика) Управленческая парадигма Парадигма… … Энциклопедия инвестора

Источник

Не Паскалем единым: что сделал для современного мира лауреат компьютерной «нобелевки» Никлаус Вирт

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни

Некоторые считают, что современный мир почти не знает Никлауса Вирта и даже не догадывается о его огромном вкладе в мировую компьютерную науку. Кто-то полагает его «отцом Паскаля». Вирта вспоминают не только педагоги в ВУЗах, когда преподают студентам Turbo Pascal, но и коммерческие разработчики, пишущие на Delphi.

На самом деле, Никлаус Вирт является инженером с большой буквы, его вклад в развитие языков программирования не ограничивается Паскалем, а только начинается с него. Кроме того, Вирт — педагог, общественный деятель и, можно сказать, философ. Попробуем оценить реальный масштаб его личности и вклад в ИТ-индустрию.

Детство, образование, увлечения

Никлаус Вирт родился 15 февраля 1934 года в небольшом городке Винтертуре, в предместье Цюриха. Его родители — Уолтер и Хедвиг Вирт. Отец Никлауса был школьным учителем. Он жил неподалеку от школы, где преподавал его отец. В их доме была хорошая библиотека, где Вирт находил немало интересных книг про железные дороги, турбины и телеграф.

Винтертур имеет многовековую историю и славится своими машиностроением: там выпускаются локомотивы и дизельные двигатели. С детских лет Вирт увлекался техникой, особенно авиамоделированием. Для запуска ракет нужно было получать топливо, и потому он занялся химией. Юный Вирт оборудовал в подвале школы «секретную» лабораторию. Ничто не могло его остановить: однажды сделанная им модель отклонилась от заданной траектории и угодила под ноги директору школы. Однако Вирт все равно продолжал упорно идти к намеченной цели.

Хобби оказалось настолько серьезным, что Вирт даже построил более десятка моделей по собственным чертежам. Между прочим, позднее он занялся настоящими полетами и пронес это увлечение через всю свою жизнь. Даже в весьма почтенном возрасте создатель популярного языка программирования не отказывал себе в удовольствии полетать на реактивном истребителе.

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни

Когда ему исполнилось 18 лет, то он с еще двумя цюрихскими авиамоделистами выписали из Англии желанную радиоаппаратуру. Это предопределило его дальнейшую судьбу – в 1954 году Вирт поступил на факультет электроники в цюрихский ETH (Eidgenoessische Technische Hochschule – Швейцарский федеральный технологический институт). После четырех лет обучения Вирт получил степень бакалавра в области электротехники. А затем начинается славное десятилетнее заокеанское научное «турне» будущего «отца Паскаля» и «короля компиляторов» по маршруту Швейцария – Канада – США – Швейцария.

Свое обучение Вирт продолжил в Лавальском университете города Квебек (Канада), где в 1960 году получил степень магистра. Затем его пригласили в университет Калифорнии в Беркли (США) – будущую жемчужину Кремниевой долины. Там под руководством профессора Хаски в 1963 году Никлаус Вирт защитил диссертацию, посвященную развитию Алгола средствами Лиспа (Euler).

Путевка в жизнь

Эта работа в буквальном смысле дала ему путевку в жизнь: Вирта приметили мэтры программирования и пригласили в Комитет IFIP по стандартизации Алгола.

Вместе с Чарльзом Хоаром Вирт отстаивал в комитете линию на разработку умеренно модифицированной версии Алгола, свободной от недостатков исходного языка и дополненной минимумом действительно необходимых средств. Вирт и Хоар представили комитету язык Алгол-W (W — от Wirth), представлявший собой именно такую переработку Алгола, но поддержки не встретили. По завершении работы комитета в 1968 году Вирт вошёл в число тех, кто критиковал Алгол-68, говоря о его недостаточной надёжности и чрезвычайной избыточности.

Та школа не прошла даром: на всю жизнь Вирт запомнил, что доказывать свою правоту нужно делом, особенно когда тебя не хотят слышать. В разработке языков он навсегда отказался от абстрактно-научного подхода в пользу математически инженерного. По его словам, лучше сначала реализовать язык и лишь потом следует о нем писать.

Великие единомышленники

Романтические 1960-е годы положили начало дружбе трех патриархов структурного программирования – голландца Эдсгера Дейкстры, англичанина Чарьза Энтони Хоара и швейцарца Никлауса Вирта.

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни
Слева направо: Никлаус Вирт, Эдсгер Дейкстра, Чарльз Хоар

Этих «нобелевских» лауреатов (премия Тьюринга, присуждаемая ассоциацией ACM, вручается раз в жизни и приравнивается в компьютерных науках к Нобелевской) сблизили не столько абстракции компьютерных наук, сколько четкая профессиональная позиция.

Паскаль

Самым известным достижением профессора Вирта считается язык Паскаль (1970). Паскаль сыграл огромную роль в области формирования мировоззрения нескольких поколений программистов. Главное его достоинство в простоте и элегантности: он построен на четких принципах структурного программирования, сформулированных Эдсгером Дейкстрой, на красивой математической базе, заложенной Энтони Хоаром, и на блестящем архитектурном воплощении идей Algol-W, реализованных Никлаусом Виртом.

С технологической точки зрения, Паскаль был интересен не только тем, что его компилятор, созданный в ETH, стал одной из первых реализаций языков высокого уровня на самом себе, примерно на два года опередив компилятор Си. В ходе работ над ним в 1973 году была придумана абстрактная Pascal-машина (P-машина), исполняющая специальный P-код. Чтобы решить проблему переноса компилятора Паскаля на разные платформы, Вирт решил воспользоваться испытанными временем методами интерпретации.

Язык Паскаль многими воспринимался, прежде всего, как язык для преподавания компьютерных наук. Но сам Вирт не согласен с таким заведомым сужением его потенциала (1984): «Паскаль был разработан в качестве языка для обучения. Хотя это утверждение справедливо, но его использование при обучении не являлось единственной целью. На самом деле я не верю в успешность применения во время обучения таких инструментов и методик, которые нельзя использовать при решении каких-то практических задач. По сегодняшним меркам Паскаль обладал явными недостатками при программировании больших систем, но 15 лет назад он представлял собой разумный компромисс между тем, что было желательно, и тем, что было эффективно».

«Пятый элемент»

В период с 1978 по 1980 год в Швейцарском федеральном технологическом институте, куда Вирт вернулся еще в конце 60-х, он разработал одну из первых компьютерных станций с графическим дисплеем 768 x 592 пикселя и мышью. Для своего компьютера он выбрал несколько странное название — «Лилит».

Лилит в иудейской традиции — злой демон в женском обличии. Она овладевает мужчинами против их воли. Кстати, согласно одной из апокрифических легенд, Лилит под именем Лилу (как в фильме «Пятый элемент») была женой Адама до сотворения Евы. Наверное, Вирт имел в виду то, что его компьютер будет чрезвычайно привлекателен для мужчин и вызовет жгучую привязанность.

Компьютер «Лилит» имел 64 кбайт оперативной памяти и процессор с частотой 7 МГц. Для 1980 года это было неплохо. Все программное обеспечение для данной машины, включая оригинальную операционную систему, Вирт — при поддержке коллег — написал на языке «Модула-2», который сам и разработал незадолго до этого.

Modula-2

В свое время Брайан Керниган, известный популяризатор языка Си, соавтор классического руководства по Си (K&R), написал критическую статью «Почему Паскаль не является моим любимым языком программирования». Если с ней внимательно ознакомиться, то можно решить, что Никлаус Вирт сделал из нее правильные выводы и в языке Modula-2 (1980) под воздействием статьи устранил многие изъяны канонического Паскаля.

Однако следует иметь в виду одно немаловажное обстоятельство. Наделавшая шума работа Кернигана была написана 2 апреля 1981 года, т.е. через два года после реализации группой Вирта в ETH первого компилятора Modula-2 и через год после выпуска аппаратной реализации Modula-2 – персонального компьютера Lilith. В апреле 1993 года на Конференции ACM по истории языков программирования Вирт в ответ на вопрос одного из своих коллег поставил языку Modula-2 оценку «6 баллов» (наивысшая оценка в школах Швейцарии).

Язык Modula-2 был не только компактной и эффективной альтернативой языку Ada, он намного опережал те реализации идей модульного программирования, которые лишь спустя годы и в гораздо менее продуманном виде нашли свое отражение в Turbo Pascal и Delphi. Знаменитая операционная система OS/400 для IBM AS/400 была реализована на Modula-2. Центр системных исследований корпорации Digital (DEC Systems Research Center) взял этот язык в качестве основы реализации своих внутренних проектов, создав впоследствии язык Modula-3.

Компьютерная индустрия отставала от работ Вирта как минимум на 5–7 лет. В том же 1979 году (когда появился первый компилятор Modula-2 на компьютере PDP-11 в среде RT-11) намного уступавший Lilith легендарный компьютер Apple II только-только обрел компилятор Apple Pascal, ориентированный на UCSD-реализацию Паскаля. До появления первого скромного Turbo Pascal Андерса Хейльсберга оставалось целых четыре года. Что касается компьютера Lilith, то он стал первым компьютером в Европе, который полноценно использовал возможности лазерной печати. Впоследствии Вирт с грустью говорил о том, что с проектом Lilith швейцарская промышленность упустила свой уникальный шанс.

«Школа Вирта»

«Школа Вирта» дарила нам новые горизонты. Читая препринты Вирта, мы открывали мир и открывались миру. Что гораздо важнее, у Вирта мы учились простоте и искусству борьбы со сложностью. Простой пример. Первые компиляторы с языка Модула-2 были двухпроходными, того требовал язык. Так и наш первый кросс-компилятор, сделанный Дмитрием Кузнецовым (Leo) на Burroughs 6700 под руководством И.В.Поттосина, был двухпроходным. Потом была история “Кроноса”. Когда у нас заработал первый “Кронос”, мы в срочном порядке сделали компилятор с урезанной Модулы-2, чтобы можно было вести разработку на самом “Кроносе”.

Мы называли этот язык и компилятор Модула-0. Компилятор был однопроходным, для чего пришлось внести изменение в язык. А потом пришла пора делать полный компилятор Модулы-2, и мы в соответствии с описанием языка начали делать его двухпроходным. Но тут пришло известие, что Вирт подкорректировал язык (добавил forward-описания процедур), и теперь можно делать однопроходный компилятор.

В итоге мы упростили себе жизнь и ускорили разработку. Главное было в том, что язык программирования, который до того был «священной коровой», принесенной откуда-то свыше, стал всего лишь рабочим инструментом, который можно подточить и подправить. Мы получили урок: разрешение творчества и понимание важности и полезности упрощений.

Во второй половине 1970-х Вирт участвовал в конкурсе министерства обороны США на разработку нового языка для программирования встроенных систем, в результате которого был создан язык Ada.

Министерство поставило задачу разработать единый язык программирования для систем управления автоматизированными комплексами, функционирующими в реальном времени. Имелись в виду, прежде всего, бортовые системы управления военными объектами. Язык назван в честь математика Ады Лавлейс.

Повторилась история с Алголом-68 — проект группы, в которой работали Вирт и Хоар, не был одобрен комитетом по языку. Чарльз Хоар и Никлаус Вирт выбыли из конкурса после первого этапа. В конкурсе победил проект, основанный на Паскале, но гораздо более сложный и объёмный.

Хоар выразил своё сожаление тем, что «погремушки и побрякушки возобладали над фундаментальными требованиями надёжности и безопасности» и предостерёг от «армады ракет, летящих не туда из-за не обнаруженной вовремя ошибки в компиляторе Ada».

Никлаус Вирт высказался более сдержанно, но тоже негативно. Он сказал: «Слишком много всего вываливается на программиста. Я не думаю, что, изучив треть Ada, можно нормально работать. Если вы не освоите всех деталей языка, то в дальнейшем можете споткнуться на них, и это приведёт к неприятным последствиям».

Жан Ишбиа, руководитель группы разработчиков Ada, выразив своё «уважение и восхищение» Виртом, не согласился с ним, сказав: «Вирт верит в простые решения сложных проблем. Я не верю в такие чудеса. Сложные проблемы требуют сложных решений».

Оберон

В 1988 году в содружестве с Юргом Гуткнехтом Вирт разработал язык программирования Оберон. Целью разработки было создание языка для реализации системного ПО проектируемой новой рабочей станции. Основой для Оберона стала Модула-2, которую существенно упростили, но при этом дополнили новыми возможностями.

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни
Юрг Гуткнехт

Никлаус Вирт с коллегами разработали первую версию системы «Оберон», машину, компилятор языка Оберон и операционную систему System Oberon, которая обладала графическим интерфейсом пользователя, расширенными концепциями использования текста в интерфейсе и в целом являла собой материальное доказательство применимости концепций Вирта.

Как уже писали на «Хабре», в Обероне модуль — это не только средство структурирования алгоритмов и структур данных, но и единица компиляции, загрузки и распространения. То есть модуль является минимальной сущностью, которую может скомпилировать компилятор. Зависимости одного модуля от других модулей вычисляются автоматически, но не приводят к включению кода из одного модуля в другой. Включаются только идентификаторы импортируемых сущностей и хэшкод зависимости, для контроля версии кода.

Модуль является единицей загрузки, то есть, кроме особых случаев код модуля представляет собой законченную программу, в которой есть точка входа, и который может выполняться неограниченно долго. То есть, полноценная программа. Даже ядро ОС это всего лишь первый загруженный в память модуль. Так же модуль предполагает, что его будут распространять не только в виде исходника, но и в виде бинарника, а так же в виде интерфейсной части, и для его запуска потребуется только определенная платформа или несколько платформ. В целом, эти понятия входят в концепцию модульности в Обероне и составляют собой модульно-ориентированное программирование.

В 1992 году Вирт и Мёссенбёк выпустили сообщение о новом языке программирования — Оберон-2, — минимально расширенной версии Оберона. В этом же году была образована дочерняя компания ETH — Oberon microsystems, которая занялась разработкой систем Оберон. Вирт стал одним из членов её совета директоров. В 1999 году эта компания выпустила следующую версию Оберона — Компонентный Паскаль, более приспособленную для компонентного программирования.

Оберон послужил прямым предком для языка параллельного программирования (Active Oberon), различных модификаций языка Оберон под другие среды исполнения (Component Pascal, Zonnon), был реализован на нескольких платформах (JVM, CLR, JS), послужил прообразом языка Java. Сама система Оберон послужила прообразом для проекта Microsoft Singularity.

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизниКак известно, появление виртуальной (абстрактной) машины Java преподносилось ее разработчиками из Sun Labs едва ли как не фундаментальное открытие в практике языков программирования.

Один из учеников Вирта, Михаэль Франц, заметил по этому поводу следующее: «Переносимость Java основана на наличии виртуальной машины, позволяющей легко имитировать большое число архитектур. Идея виртуальной машины была очень популярна уже более двадцати лет назад, хотя впоследствии о ней забыли. Тогда речь шла о Pascal-P – созданной в ETH реализации Паскаля, которая сыграла решающую роль в распространении этого языка. Интересно, что виртуальные машины для Паскаля и Java весьма схожи по архитектурe».

На пороге 2000-х

Java не только не может считаться простым, но является одним из самых сложных языков, более сложным, чем Си++, и вдвое более сложным, чем Оберон.

Но может быть, сопоставление с тем же Обероном некорректно? Ведь, наверное, Java все же более богатый язык, чем этот ваш Оберон? Ничего подобного! В Java есть всего две существенные вещи, которых нет в Обероне: встроенная многопоточность и обработка исключений. Целесообразность включения средств параллельного программирования непосредственно в язык подвергается сомнению многими специалистами. Это могло бы решаться на уровне библиотек. К тому же тот механизм, который реализован в Java, — решение отнюдь не самое удачное.

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни
Сравнение объема синтаксиса языков

Общее число лексем в описании синтаксиса языка может служить обобщенной характеристикой размера этого описания.

Зато в маленьком Обероне есть и полноценные записи (объекты), и нормальные многомерные массивы, а не только указатели на них. Имеются в Обероне и привычные строки с нулем на конце, которые являются просто массивами символов, а никакими не объектами, а значит, не требуют специальных средств для манипуляций.
Вопреки пропаганде Java содержит мало чего-либо действительно нового. Та же концепция виртуальной машины — первое, что приходит в голову, если задуматься о многоплатформности. Лет двадцать пять назад это было удачным и свежим решением.

Такое мнение было высказано более 15 лет назад, когда подобные споры были актуальны. Вопрос о том, насколько теперь Java стал лучше или хуже в этом плане, оставим открытым.

Педагогическая и общественная деятельность

С 1963 по 1967 годах Вирт работал доцентом (assistant professor) в Стэнфордском университете и в 1967 вернулся в этом звании в университет Цюриха. А в 1968 году он получил в ETH звание профессора компьютерных наук и начал возводить на родине свой «швейцарский» Стэнфорд.

Двадцатилетие с 1969 по 1989 год было, пожалуй, самым плодотворным периодом в жизни Вирта. Он продолжал строить свою школу, уделяя немало времени организационной деятельности.

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни
Источник: oberon2005.oberoncore.ru

C 1982 по 1984 год (а потом и с 1988 по 1990 год) Вирт возглавлял в ETH факультет компьютерных наук, а с 1990 года руководил Институтом компьютерных систем (Institute of Computer Systems) при ETH.

На пенсию профессор Вирт ушел 1 апреля 1999 года по достижении 65-летнего возраста.

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни
Источник: oberon2005.oberoncore.ru

В 2001 году Никлаус Вирт написал приветствие российским студентам и преподавателям в связи с введением курсов по изучению «Оберона» в МГУ: «Искренне надеюсь, что «Оберон» поможет в обучении высококлассных программистов и ученых в России и что его оценят в стране, где всегда придавали большое значение основательному образованию».

Жизненное кредо

Жизненное кредо Никлауса Вирта, пишет Руслан Богатырев, лучше всего передают слова великого Блеза Паскаля: «Все наше достоинство заключено в мысли. Не пространство и не время, которых мы не можем заполнить, возвышают нас, а именно она, наша мысль. Будем же учиться хорошо мыслить».

P.S. А теперь читателям предлагается оценить масштаб личности по списку основных проектов Никлауса Вирта:

никлаус вирт годы жизни. Смотреть фото никлаус вирт годы жизни. Смотреть картинку никлаус вирт годы жизни. Картинка про никлаус вирт годы жизни. Фото никлаус вирт годы жизни
Источник: oberon2005.oberoncore.ru

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *