Пратт Т. Языки программирования: разработка и реализация. Перевод с английского под редакцией Баяковского Ю. М. Издательство «Мир» Москва 1979.
Книга посвящена систематическому изложению языков программирования. В первой ее части вводится система понятий и критериев, позволяющих исследовать самые различные языки с единой точки зрения. Главное внимание уделяется семантике языков, т. е. структурам данных, операциям, структурам управления и организации памяти. Во второй части рассматриваются семь наиболее распространенных языков программирования: Фортран, Алгол 60, Кобол, ПЛ/1, Лисп, Снобол 4, АПЛ. Книга рассчитана на широкий круг программистов. Она будет полезным учебным пособием при изучении языков программирования в вузах, поможет профессиональным программистам наиболее рационально выбирать языки для конкретных приложений.
Хотя языкам программирования посвящено немало монографий, учебников и практических руководств, появление еще одной книги на эту тему можно только приветствовать. Дело в том, что обычно главное внимание уделяется синтаксису языка, т. е. его внешней, формальной оболочке (заметим, кстати, что обостренный интерес именно к синтаксису стал одной из причин появления языков разных по форме, но почти не отличимых по содержанию). В книге Т. Пратта, напротив, исследуется семантика языков программирования — о синтаксисе речь идет лишь в тех немногих случаях, когда необходимо показать взаимосвязь формы и содержания языка.
Автор выделяет совокупность понятий (данные, операции, управление последовательностью действий, управление данными, управление памятью, операционная среда), которые образуют базис для анализа семи наиболее известных языков программирования— Фортрана, Алгола, Кобола, ПЛ/I, Лиспа, Снобола, АПЛ. Только семантика позволяет понять, почему программы на одном языке более эффективны, чем на другом, каким инструментом целесообразнее пользоваться в данной предметной области, что должно ставиться во главу угла при разработке нового языка.
Попытка единообразного систематического изложения семантики языков программирования вызвала немало трудностей, в частности терминологического характера. Эти трудности, естественно, усугубились при переводе книги на русский язык. Взять хотя бы слово statement, которое на русский язык переводится по-разному: оператор, предложение, утверждение, инструкция. Мы приняли последний вариант и использовали слово оператор только в смысле operator. Однако это соглашение нарушалось, когда речь шла об Алголе — в этом случае применялась традиционная для этого языка терминология.
В книге используется ряд новых терминов, не встречавшихся ранее в нашей литературе, и поэтому читателю следует внимательно отнестись к их определениям.
Книга Т. Пратта вообще (в отличие от нередко встречающихся в литературе по программированию поверхностных и описательных книг) не предназначена для «чтения в трамвае». Она требует обстоятельного и глубокого изучения. Многие разделы книги не находили прежде сколько-нибудь заметного освещения в литературе на русском языке. Здесь, например, читатель может получить хотя бы общее представление о таком популярном языке, как Снобол 4 (перевод книги Грисволда и др. [1971], содержащей полное описание этого языка, готовится в настоящее время в издательстве «Мир»). Не приходится сомневаться, что книга Т. Пратта будет полезна всем, кто серьезно занимается изучением, разработкой, реализацией и применением языков программирования.
Последнее обновление:
Вторник, 18 Сентября 2018 года.
|