Navigation

Публикации

Его книга, написанная совместно с Кэтлин Дженсен, Руководство пользователя и отчет Pascal, послужила основой для многих усилий по внедрению языков в 1970-х и 1980-х годах в США и по всей Европе..

Его статья «Разработка программ путем пошагового уточнения», посвященная обучению программированию, считается классическим текстом в программной инженерии. В 1975 году он написал книгу Алгоритмы + структуры данных = Программы, получившую широкое признание. Основные исправления этой книги под новым названием «Алгоритмы + структуры данных» были опубликованы в 1985 и 2004 годах. Примеры в первом издании были написаны на Паскале. В более поздних изданиях они были заменены примерами, написанными соответственно на Modula-2 и Oberon.

Его учебник «Систематическое программирование: введение» считался хорошим источником для студентов, которые хотели больше, чем просто программировать. На обложке шестого издания (1973 г.) говорилось, что книга «… адаптирована к потребностям людей, которые рассматривают курс по систематическому построению алгоритмов как часть своей базовой математической подготовки, а не к непосредственным потребностям тех, кто хотят иметь возможность время от времени кодировать проблему и передавать ее своему компьютеру для мгновенного решения «. Считавшийся сложным для проработки текстом, его считали обязательным к прочтению для тех, кто интересовался числовой математикой.

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

Китай идет на прорыв

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

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

Но сейчас все изменилось. Китай прогрессирует очень быстро. Теперь он может не только копировать, но и сам проводить исследования. То, что, по мнению профессора, отличает культуру как Китая, так и России, — это стимулирование в этих странах духа коллективизма. А к культу западного индивидуализма он относится с некоторым недоверием.

Показать больше

Показать больше

Искусственный интеллект возник в итальянской Швейцарии

Этот контент был опубликован 21 января 2018 года
21 января 2018 года
Искусственный интеллект (ИИ) однажды раз и на всегда победит человека. В этом убежден Юрген Шмидхубер, эксперт, который, фактически его придумал.

Показать больше

Показать больше

Почему таяние глетчеров в Швейцарии касается всех!

Ледники в Альпах могут исчезнуть уже к концу 21 века. Катастрофа? Не будем торопиться!

Статья в этом материале

  • Швейцарский философ: «Технология никогда не бывает нейтральной»
  • Должны ли роботы платить налоги?
  • Искусственный интеллект возник в итальянской Швейцарии
  • Почему таяние глетчеров в Швейцарии касается всех!

В соответствии со стандартами JTI

Публикации

Его книга, написанная совместно с Кэтлин Дженсен, Руководство пользователя и отчет Pascal, послужила основой для многих усилий по внедрению языка в 1970-х и 1980-х годах в США и по всей Европе.[нужна цитата ]

Его статья Разработка программ путем поэтапного уточнения, о преподавании программирования, считается классическим текстом в программной инженерии. В 1975 году он написал книгу Алгоритмы + Структуры данных = Программы, получившего широкое признание. Основные исправления этой книги с новым названием Алгоритмы + структуры данных были опубликованы в 1985 и 2004 годах. Примеры в первом издании были написаны на Паскале. В более поздних изданиях они были заменены примерами, написанными соответственно на Modula-2 и Oberon.

Его учебник, Систематическое программирование: введение, считался хорошим источником для студентов, которые хотели больше, чем просто программировать.[нужна цитата ] На обложке шестого издания (1973 г.) говорилось, что книга «… адаптирована к потребностям людей, которые рассматривают курс по систематическому построению алгоритмов как часть своей базовой математической подготовки, а не к непосредственным потребностям тех, кто хотят иметь возможность время от времени кодировать проблему и передавать ее своему компьютеру для мгновенного решения «. Этот текст считался сложным для работы, но его считали обязательным к прочтению для тех, кто интересовался числовой математикой.

Подпись Никлауса Вирта

В 1992 году он опубликовал (с Юрг Гуткнехт ) полная документация Оберон ОС. Вторая книга (с Мартином Райзером) была задумана как руководство программиста.

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

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

Даже расширение существующих языков и систем всегда сопровождалось упрощением. По подсчётам, опубликованным в статье Сергея Свердлова «Арифметика синтаксиса», «линия Вирта», как он её назвал — линейка языков, включающая Паскаль, Модулу-2, Оберон и Оберон2 — это единственный пример «генетической линии» языков-потомков Алгола-60, в которой сложность языка, определённая как количество лексем в его описании, стабильно снижалась и в настоящее время оказывается ниже, чем у общего «прародителя» — Алгола-60. Все языки «линии Вирта» проще Алгола-60, и каждый следующий язык в этой линии проще предыдущего. В то же время Ада более чем вдвое сложнее своего предшественника — Паскаля, C++ приблизительно в 1,7 раза сложнее Си, а в линейке Паскаль — Турбо Паскаль разных версий — Object Pascal сложность постоянно растёт от версии к версии.

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

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

Языки идеальной простоты

За свою карьеру Никлаус Вирт разработал несколько языков программирования, среди них Euler, Algol-W, Modula и в особенности Pascal. Его перу принадлежит ряд классических учебников и справочников по информатике. Его языки программирования отличались ясной концепцией и идеальной простотой, что особенно было ценно для целей преподавания. Преемник «Паскаля» информационный язык «Oberon», такого успеха уже, правда, не снискал, а разработанный им персональный компьютер «Lilith» хоть и имел все шансы превратить Никласа Вирта в Стива Джобса, но, увы, в науке, а особенно в бизнесе «шансы» — это еще далеко не всё.

Никлаус Вирт родился в 1934 году в городе Винтертур, крупном промышленном центре в кантоне Цюрих. В молодости у него была собственная мастерская-лаборатория, в которой он строил модели самолетов и проводил химические опыты. В Швейцарской Высшей Технической школе он получил образование по специальности «инженер-электрик». «В то время в ЕТН существовали „партии“ приверженцев слабого тока и сильного тока», — рассказывает он

«Мне посоветовали сфокусировать все своё внимание на сильных токах, мол, за ними будущее, то есть электростанции и железные дороги. Но меня завораживали слабые токи

Электроника представлялась мне чем-то магическим и таинственным».

Никлаус Вирт в 1980-е годы с разработанным им персональным компьютером «Lilith».

Его отец, гимназический преподаватель географии, настроил сына на необходимость для начала повидать свет. Через четыре дня после свадьбы Никлаус с женой едут в Париж, затем в Гавр, пересекают на корабле Атлантический океан и попадают в Нью-Йорк. Затем целый год они проводят в Канаде, а после Никлаус работает над докторской диссертацией в Калифорнийском университете в Беркли. Получив в 1963 году докторскую степень, он почти пять лет работает ассистентом профессора информатики в Стэнфорде.

После недолгих «гастролей» в Цюрихском университете он возвращается в лоно своей альма-матер, Высшей технической школы в Цюрихе. В 1968 году он становится профессором информатики и работает там уже без перерыва более 30-ти лет, вплоть до момента выхода на пенсию. Вместе с Густи Цендером (Carl August ZehnderВнешняя ссылка) он создает в ЕТН самую первую кафедру информатики. О длительном пути к созданию этой кафедры он рассказывает в этом англоязычном интервью Елене Трихиной, другому известному специалисту-эксперту в области информатики.

Внешний контент

Никлаус Вирт

1. Никлаус Вирт

Эта страница расскажет о создателе почти всего семейства языков Паскаль. Имя этого человека настолько значительно, что он заслуживает отдельной страницы.

Никлаус Вирт родился 15 февраля 1935 г. в Швейцарии на окраине Цюриха. Отец Никлауса был школьным учителем в местной школе. Увлечениями Никлауса были электроника, системы дистанционного управления и авиамоделизм. Авиамоделизм станет для Вирта хобби на всю жизнь. В 1954 г. он поступил на факультет электроники Швейцарского федерального технологического института (ETH) в Цюрихе. Через 4 года получил степень бакалавра и на этом не остановился. В 1960 г. он закончил со степенью магистра университет Лаваля в г. Квебек (Канада). Из-за особенностей получения учёной степени в европейской системе образования, Вирт далее продолжил написание диссертации в Калифорнийском университете в Беркли (США) — одном из сильнейших учебных заведений «Лиги витого плюща», где в 1963 г. защитил диссертацию в ходе которой создал язык программирования Эйлер — расширенный Алгол средствами языка программирования Лисп. Работа Вирта была оценена, и он был приглашён в комитет по стандартизации Алгола. Вирт предложил сильную переработку Алгола, но коллеги не приняли её. В 1967 г. Никлаус Вирт возвращается в Цюрих.

2. Паскаль

В 1968 г. в Цюрихе Вирт получает звание профессора. Его работа сопряжена с организацией обучения, проведением исследований, написанием научных работ. В 1970-м году был представлен первый Паскаль. Вирт в соавторстве с Хоаром и Дейкстрой разрабатывает научные принципы программирования на протяжении нескольких лет. Один из таких принципов «сверху-вниз» сейчас широко используется, и мало кто его пытается поставить под сомнение. В 1973 г. был представлен прототип виртуальной машины для исполнения Паскаля на любой аппаратной платформе. Это было новое слово в сфере программирования. В период с 1975 по 1980 г. Вирт разрабатывает язык программирования Modula-2, который явился дальнейшим шагом в семействе Паскаль. Новый язык ярко ориентировался на надёжное промышленное программирование. Modula-2 не превзошел по популярности Паскаль, но прочно занял своё место среди надёжных языков. В конце 1970-х Вирт участвует на конкурсной основе в создании языка программирования для Министерства обороны США, который позже станет известен как Ada. Америка повторно отвергла труды Вирта, хотя объективно, Ада гораздо более сложный язык, и контролировать его с полной гарантией правильности работы программ невозможно (хотя, стоит отдать Аде должное — программы на этом языке куда надёжнее, чем например на Си или Java). В результате катастрофы ракеты-носителя «Ариан-5» из-за ошибки в программном модуле, написанном на Аде стало понятно, что один из создателей языка Ада Джон Ишбиа ошибался, когда заявил: «Господин Вирт верит в простые решения для сложных проблем».

3. Oberon

В сотрудничестве с Юргом Гуткнехтом Никлаус Вирт в 1988 г. разрабатывает язык программирования Oberon, на базе которого была разработана одноименная операционная система. В 1992 г. в сотрудничестве с Мёссенбёком был выпущен язык программирования Oberon-2. С целью реализации коммерческого потенциала Вирт входит в совет директоров компании Oberon Microsystems. Компания выпускает в 1999 г. развитие языка под названием Компонентный Паскаль. В том же 1999 г. Никлаус Вирт уходит на пенсию, т.к. по законам Швейцарии, он как государственный служащий достиг предельного возраста.

4. Вирт в России

Фамилию этого человека в России знает огромное количество людей. Ведь Паскаль сталь стандартом в образовании несколько десятков лет назад, и до сих пор едва ли ему найдется столь же ценная замена. В 2007 году Никлаус Вирт получил ученую степень почетного доктора Российской академии наук

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

5. Авиация

Вирт болеет авиамоделированием и авиацией. Это та область, в которую он готов был вкладывать свои навыки и время. На просторах интернета существует фотография, на которой Вирт сидит в шлеме пилота в кабине самолета «Миг». Пролететь на этом самолете — была его мечта. И он ее тоже осуществил.

6. FPGA

После ухода на пенсию Н.Вирт занялся разработкой компилятора для микроконтроллеров. Сначала был опубликована новая ревизия языка Оберон с учетом использования его в микроконтроллерах. А затем в 2015 году была опубликована новая ревизия проекта Оберон для современных микроконтроллеров.

Другие проекты Вирта: Modula-2 и Lilith

А Никлаус Вирт продолжал создавать новые языки структурного программирования. Следующей его разработкой был Modula — язык, сочетавший модульность программ и параллельное программирование. Но Modula так и не стал популярным.

В 1977 году учёный решил создать целую компьютерную систему с персональной рабочей станцией, микрокодом, компилятором, операционной системой и сервисными программами, удобную для пользователей и разработчиков. Проект Никлаус назвал Lilith.

По меркам того времени это была новаторская идея — ведь тогда операторы производили вычисления на огромных мейнфреймах с доступом на терминалах, где на одной машине одновременно решались задачи двух-трёх пользователей, остальные дожидались своей очереди.


Мейнфрейм IBM System/370Фото: Bettmann / Getty Images

Идея Lilith пришла Вирту, когда он побывал в калифорнийском центре Xerox PARC. Там он увидел персональную рабочую станцию с монитором, мышью и отдельным диском. Здесь пользователи не делили между собой ресурсы одной машины — у каждого имелся личный компьютер. На Никлауса это произвело большое впечатление, и он решил реализовать нечто подобное у себя дома, в Цюрихе.

В 1979 году специалисты-электронщики из ETH создали для проекта Lilith персональный компьютер с четырьмя наборами Am2901, работавший с 16-разрядными словами.


Персональная станция LilithФото: Wikimedia Commons

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

Так появился Modula-2. В нём была прикладная и системная часть и псевдомодуль SYSTEM для низкоуровневого программирования.

Пример. Нахождение наибольшего общего делителя на Modula-2:

Для Lilith была разработана ОC Medos с программной поддержкой дисплея и текстовый редактор с раскрывающимся меню.

В 1980 году студенты ETH собрали первые 20 компьютеров (всего их было 60). В 1982 году компьютеры Lilith подключили к серверу и сети на базе Ethernet. А когда появились лазерные принтеры Canon LBP-10, Lilith стали первыми компьютерами в Европе, полностью использовавшими их возможности: шрифты, графику, отсканированные изображения и электронные схемы.

Позже Вирт говорил, что если бы компьютерная индустрия Швейцарии сумела реализовать весь потенциал Lilith, то она смогла бы занять гораздо более видное место в истории.

В 1984 за Lilith и Modula-2 Никлаус Вирт был награждён премией Алана Тьюринга — аналогом Нобелевской премии в области компьютерных наук.

На языке Modula-2 была написана OS/400 для IBM AS/400, компиляторы для персональных компьютеров PC, Macintosh, рабочих станций IBM RS/6000, мейнфреймов IBM, SGI.

Но, несмотря на свою простоту и эффективность, Modula-2 не стал широко распространённым и не смог потеснить своего предшественника Pascal — возможно, потому, что мало кому известная система Lilith не смогла помочь языку в продвижении.

В 1988 году Никлаус Вирт и Юрг Гуткнехт создали на основе Modula-2 язык Oberon для работы на станции Ceres, а затем выпустили его улучшенную версию Oberon-2.

В 1996 году учёный разработал язык Lola для описания цифровых электрических схем.

И уже в конце своей профессиональной карьеры Вирт, как бы в продолжение своего мальчишеского увлечения, помог механикам из ETH создать первый экземпляр дрона. Он разработал и запрограммировал бортовой компьютер, причём сумел сократить почти в 10 раз количество потребляемой им энергии.

В 1999 году, в возрасте 65 лет, Никлаус Вирт ушёл на пенсию. Более 30 лет он отдал Швейцарскому технологическому университету, где был сначала профессором, затем деканом факультета компьютерных наук, а после стал во главе Института компьютерных систем ETH.


Никлаус Вирт сегодняФото: Ocg.at / Flickr

Но Вирт не прекратил свою научную деятельность. Он написал ряд классических учебников и справочников по информатике. Сегодня Никлаус Вирт — член нескольких национальных академий, в том числе почётный доктор Российской академии наук (с 2007 года).

Что было не так с Algol 68

Вскоре Вирт стал работать в комитете IFIP, где занимался стандартизацией Algol. В то время Algol 60 пользовался большой популярностью в Европе — как язык программирования и как средство описания алгоритмов в научных работах. Но у него было много недостатков, и язык срочно нуждался в доработке.

Вирт в 1960-хФото: Wikimedia Commons

Никлаус и учёный из Оксфордского университета Чарльз Хоар предложили свой вариант языка — Algol W. Это была умеренная переработка Algol, очищенная от дефектов и дополненная необходимой функциональностью. Хотя многие учёные положительно оценили этот проект, комитет его отклонил.

В 1968 году комитет представил новый язык — Algol 68. Даже опытные программисты сочли его слишком объёмным и сложным, а напарник Никлауса Чарльз Хоар так и вообще назвал неясным и чересчур амбициозным.

Пример. Вычисление даты следующего дня на Algol 68:

Многие члены комитета, в том числе Вирт, выступили с критикой Algol 68 и составили доклад, в котором говорилось: «Как инструмент надёжного создания сложных программ язык следует признать неудачным». Однако комитет IFIP запретил распространять этот доклад.

Algol 68 не достиг популярности Algol 60 и не смог потеснить распространённые Fortran и COBOL. В академических кругах его сочли слишком громоздким и не захотели использовать.

Почему язык «Паскаль» получил мировую известность?

Почему же именно язык «Паскаль» стал таким известным и востребованным? «Просто по сравнению с существовавшими ранее языками программирования, такими архаичными, как Fortran и Cobol, этот язык представлял собой качественный шаг вперёд». Распространению этого языка способствовало появление в середине 1970-х годов микрокомпьютеров с 8-битовыми процессорами, которые были достаточно дешевы, чтобы их могли купить школы и обычные семьи. Потом одному находчивому бизнесмену пришла в голову идея дополнить компьютер, работающий на языке «Паскаль», маленькой программой-редактором, продавая ее на гибком магнитном диске за 50 долларов.

«В конечном итоге это привело к коммерческому прорыву, тем более что в те времена остальные расхожие модели компьютеров стоили тысячи франков». Язык «Паскаль» быстро распространился в СССР, чему способствовала и холодная война, ведь «Паскаль» не был американским продуктом. Язык «Oberon», модернизированная его версия, хотя и был намного лучше старого «Паскаля», но так и не смог справиться с конкуренцией на рынке.

Показать больше

Показать больше

Должны ли роботы платить налоги?

Этот контент был опубликован 19 марта 2017 года
19 марта 2017 года
Если роботы заменяют человека на производстве, то не должны ли они, как и человек, платить налоги?

«Победили языки американского производства, такие, как C, C++, Java. Правда, они переняли многие идеи от «Оберона». Но об этом сейчас практически никогда не упоминается», — говорит Н. Вирт. Его руководство по применению «Паскаля» было переведено на многие языки и до сих пор остается бестселлером, но денег за это Н. Вирт практически не получает. «У меня, собственно, никогда не было цели разбогатеть. Я просто получал удовольствие от исследовательской работы, кроме того, мне в Высшей технической школе и так платили довольно хорошо», — говорит Н. Вирт, и это звучит вполне искренне.

Китай идет на прорыв

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

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

Но сейчас все изменилось. Китай прогрессирует очень быстро. Теперь он может не только копировать, но и сам проводить исследования. То, что, по мнению профессора, отличает культуру как Китая, так и России, — это стимулирование в этих странах духа коллективизма. А к культу западного индивидуализма он относится с некоторым недоверием.

Показать больше

Показать больше

Искусственный интеллект возник в итальянской Швейцарии

Этот контент был опубликован 21 января 2018 года
21 января 2018 года
Искусственный интеллект (ИИ) однажды раз и на всегда победит человека. В этом убежден Юрген Шмидхубер, эксперт, который, фактически его придумал.

Показать больше

Показать больше

Почему таяние глетчеров в Швейцарии касается всех!

Ледники в Альпах могут исчезнуть уже к концу 21 века. Катастрофа? Не будем торопиться!

Статья в этом материале

  • Швейцарский философ: «Технология никогда не бывает нейтральной»
  • Должны ли роботы платить налоги?
  • Искусственный интеллект возник в итальянской Швейцарии
  • Почему таяние глетчеров в Швейцарии касается всех!

В соответствии со стандартами JTI

Книги

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

  • Систематическое программирование. Введение. М.: Мир, 1977;
  • Паскаль. Руководство для пользователя и описание языка. М.: Финансы и статистика, 1982 (в соавторстве с К. Иенсен);
  • Алгоритмы + структуры данных = программы. М.: Мир, 1985;
  • Программирование на языке Модула-2. Перевод с англ. В. А. Серебрякова, В. М. Ходукина; Под ред. В. М. Курочкина. — М. : Мир, 1987. — 222 с.;
  • Алгоритмы и структуры данных. М.: Мир, 1989. ISBN 5-03-001045-9 (версия книги на языке Модула-2)
  • Алгоритмы и структуры данных. СПб.: Невский диалект. 2001.
  • Алгоритмы и структуры данных. Новая версия для Оберона + CD. М.: ДМК Пресс, 2010. ISBN 978-5-94074-584-6, 0-13-022005-9
  • Построение компиляторов. М.: ДМК Пресс, 2010. ISBN 978-5-94074-585-3, 0-201-40353-6
  • Разработка операционной системы и компилятора. Проект Оберон: Пер. с англ. Борисов Е. В., Чернышов Л. Н. — М.: ДМК Пресс, 2012. — 560 с.: ил.. ISBN 978-5-94074-672-0

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

На английском языке:

  • Systematic Programming. Prentice Hall, Englewood Cliffs, 1973. 0-13-880369-2
  • PASCAL — User Manual and Report. (with Kathy Jensen) Springer-Verlag, 1974. ISBN 0-387-96048-1, 3-540-96048-1
  • Algorithms + Data Structures = Programs. Prentice-Hall, Inc., Englewood Cliffs (1976). ISBN 0-13-022418-9.
  • Programming in Modula-2. Springer-Verlag, Heidelberg, New York, 1982. ISBN 3-540-11674-5
  • Algorithms & Data Structures. Prentice-Hall, 1986. ISBN 0-13-022005-1
  • Programming in Oberon: Steps beyond Pascal and Modula. (with M. Reiser) Addison-Wesley, 1992. ISBN 0-201-56543-9
  • Project Oberon. (with J. Gutknecht) Addison-Wesley, Reading, 1992. ISBN 0-201-54428-8
  • Digital Circuit Design. Springer-Verlag, Heidelberg, 1995. ISBN 3-540-58577-X
  • Theory and Techniques of Compiler Construction. Addison-Wesley, Reading, 1996. ISBN 0-201-40353-6
  • Algorithms and Data Structures (1985) (in Oberon: 2004)
  • The School of Niklaus Wirth. L. Boeszoermenyi, J. Gutknecht, G. Pomberger, Eds., 2000. ISBN 3-932588-85-1, ISBN 1-55860-723-4

Как родился Pascal

До 1967 года Никлаус Вирт трудился в Стэнфорде и разрабатывал язык PL/360 для IBM System/360. Затем он вернулся в Цюрихский университет и вскоре стал профессором компьютерных наук. Так началось самое плодотворное время в его жизни.

У себя на родине, в Швейцарии, Вирт хотел создать что-то, похожее на Стэнфорд. Он занялся не только научной, но ещё и организационной деятельностью и успешно внедрил в ETH нравы и традиции Стэнфордского университета.

Вирту не нравился ни Algol, ни другие существовавшие на тот момент языки — он считал их слишком многословными и нелогичными.

Надо понимать, что в 1960–1970-х годах в языки программирования вкладывался философский смысл — их рассматривали как средство общения человека с машиной. Вирт же считал, что языки программирования должны стать чётко структурированными наборами правил для управления компьютером. Поэтому он приступил к разработке языка Pascal, названного так в честь физика Паскаля.

Ещё во время работы в IFIP Никлаус познакомился с учёными Дейкстрой и Хоаром. Используя принципы структурного программирования Дейкстры и математическую базу Хоара, Вирт создал Pascal — причём на основе своих же наработок из Algol W.


Эдсгер Вибе ДейкстраФото: Wikimedia Commons

В 1968 году Никлаус с командой подготовили проект языка, затем занялись разработкой его компилятора. Учёные создали Pascal-машину (P-машину) с промежуточным P-кодом, что позволяло переносить Pascal на разные платформы. Компилятор для Pascal был написан на самом Pascal. В дальнейшем Джеймс Гослинг использовал концепцию P-машины при разработке Java и JVM.

В 1971 году Никлаус представил описание Pascal. Он назвал своё детище небольшим языком со структурным программированием и структурированными данными. Одной из целей Pascal было обучение студентов профессиональному программированию, однако язык годился также для решения сложных практических задач.

Пример. Вывод «Hello, world.» на Pascal:

Биография

Вирт родился в Винтертуре., Швейцария, в 1934 году. В 1959 году он получил степень бакалавра наук в области электронной инженерии в Швейцарском федеральном технологическом институте Цюриха (ETH Zürich). В 1960 году он получил степень магистра наук (MSc) в Université Laval, Канада. Затем, в 1963 году, он получил докторскую степень в области электротехники и компьютерных наук (EECS) в Калифорнийском университете в Беркли под руководством пионера компьютерного дизайна Гарри Хаски.

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

Он участвовал в разработке международных стандартов в программировании и информатике, будучи членом Международной федерации обработки информации (IFIP) Рабочая группа 2.1 IFIP по алгоритмическим языкам и исчислениям, которая указала, поддерживает и поддерживает языки программирования ALGOL 60 и ALGOL 68.

В 2004 году он стал членом Музея компьютерной истории «за основополагающую работу в области языков программирования и алгоритмов, включая Эйлера, Algol-W, Паскаль, Модулу и Оберон».

биография

Вирт родился в Винтертур, Швейцария, в 1934 году. В 1959 году он получил степень бакалавра наук в области электроинженерия от Швейцарский федеральный технологический институт Цюриха (ETH Zürich). В 1960 году он получил степень магистра наук (MSc) от Université Laval, Канада. Затем в 1963 году ему была присвоена степень доктора философии. Электротехника и информатика (EECS) из Калифорнийский университет в Беркли под руководством пионера компьютерного дизайна Гарри Хаски.

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

Он участвовал в разработке международные стандарты в программировании и информатике, как член Международная федерация обработки информации (ИФИП) Рабочая группа 2.1 ИФИП по алгоритмическим языкам и исчислениям, который указан, поддерживает и поддерживает языки программирования АЛГОЛ 60 и АЛГОЛ 68.

В 2004 году он стал членом Музей истории компьютеров «За плодотворную работу в области языков программирования и алгоритмов, включая Эйлера, Алгол-W, Паскаль, Модулу и Оберон».

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Работатека
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: