Главная мысль, которую пытался донести Вирт — это то, что студентов нужно учить
программированию, а не языку программирования. Что ж, с этим не поспоришь, остается
только сожалеть, что такую простую мысль многим нужно разжевывать.
Сам Вирт производит очень приятное впечатление: спокойный, терпимый. Говорит четко и
не без юмора.
К сожалению, в короткой лекции остались за бортом мелкие детали, которые хотелось бы
услышать лично от Вирта. Например, про перечислимые типы он очень коротко бросил, что
их выкинули из языка потому, что с ними возникали какие-то проблемы. Жаль, я бы с
удовольствием послушал, какие именно проблемы, по мнению Вирта, они вызывали.
Вообще, осталось впечатление, что язык программирования для Вирта — это прежде всего
средство обучения. Многие мелочи, существенные для того, кто зарабатывает на жизнь
программированием, Вирта, похоже, не очень волнуют — он смотрит на проблему с другой
стороны. Например, когда я спросил, чем обусловлены некоторые отличия синтаксиса
Оберона от синтаксиса Паскаля в тех случаях, когда за этими отличиями нет никакой
идеологии, как, например, в записи оператора логического И в виде "&" вместо "and",
Вирт ответил в том духе, что эти мелочи совершенно непринципиальны, человек легко
привыкает писать амперсенд. После этого ответа по рядам пронесся легкий шум, в котором
угадывалось "но старый-то код переносить сложнее!"
Очень позабавил вопрос студента про то, что Вирт думает про Turbo Pascal, в котором
объединили оригинальный Паскаль и Модулу-2. Вирт очень удивленно переспросил: "Что-что
они там объединили?!"
Самое неприятное впечатление оставил переводчик. Он очень хорошо владел разговорным
английским, но в технических терминах откровенно плавал. Поэтому лирические отступления
Вирта он переводил хорошо, а вот технические детали искажал иногда до неузнаваемости.
Например, "programming languages" упорно переводил как "программирующие языки",
вместо "symbol file" услышал "simple file" и перевел соответственно, а "concurrency"
(параллелизм) перепутал с "concurrence" (согласованность). Спасало только то, что
Вирт говорил очень разборчиво. Но ведь при наиболее одиозных ляпах переводчику кто-то
быстро подсказывал, и он поправлялся. Значит, рядом стоял кто-то, кто знал, как
переводить правильно. Так почему же организаторы не озаботились тем, чтобы за
десять минут до лекции подготовить для переводчика шпаргалку с правильным переводом
специальных терминов? Это большая недоработка организаторов.
Но в целом на лекции было очень интересно. Когда начинаешь понимать образ мыслей
человека, создавшего язык, на котором ты каждый день программируешь, это оставляет
сильное впечатление.