Иллюстрированный самоучитель по практике программирования
Нотация
-
Из всех творений человека | самым удивительным является язык. | Джайлс Литтон Страчи | Слова и поэзия | Правильный выбор языка может решающим образом влиять на простоту написания программы.
-
Между тем, что мы хотим сказать компьютеру ("реши мою проблему"), и тем, что нам приходится ему говорить для достижения нужного результата, всегда существует некоторый разрыв. Очевидно, что чем этот разрыв меньше, тем лучше.
-
Спецификаторы формата для pack и unpack – достаточно простой способ записи, описывающий компоновку пакетов. Следующая тема iniero обсуждения – несколько более сложный, но гораздо более выразительный способ записи – регулярные выражения (regular pressions), определяющие шаблоны текста (patterns of text).
-
Множество инструментов группируется вокруг языков специального назначения. Программа grep – всего лишь одна из целого семейства инструментов, которые используют регулярные выражения или другие языки для разрешения программистских проблем.
-
Какой путь проходит программа от исходного кода до исполнения? Если язык достаточно прост, как в printf или в наших простейших регулярных выражениях, то исполняться может сам исходный код. Это несложно; таким образом можно запускать программу сразу же по написании.
-
Возможно, самым примечательным в функции generate является то, что она представляет собой программу, которая пишет другую программу – ее вывод есть поток исполнимых команд для другой (виртуальной) машины.
-
Опустившись на пару уровней, можно говорить о макросах, которые шут код во время компиляции. На протяжении всей книги мы предостерегали вас от использования макросов и условной компиляции, поскольку этот стиль программирования вызывает множество проблем, все же они все равно существуют, и иногда текстуальная подстановка – это именно то, что нужно для решения данной проблемы.
-
В предыдущем разделе мы говорили о программах, которые пишут программы. В каждом примере программы генерировались в виде исходного кода и, стало быть, для запуска должны были быть скомпилированы или нтерпретированы.
-
В книге Брайана Кернигана и Роба Пайка "The Unix Programming nvironment" (Brian Kernighan, Rob Pike. The Unix Programming nvironment. Prentice Hall, 1984) широко обсуждается инструментальный подход к программированию, который так хорошо поддерживается Unix.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.