Дополнительная литература
В книге Брайана Кернигана и Роба Пайка "The Unix Programming nvironment"
(Brian Kernighan, Rob Pike. The Unix Programming nvironment. Prentice
Hall, 1984) широко обсуждается инструментальный подход к программированию,
который так хорошо поддерживается! Unix. В восьмой главе ее содержится
полная реализация — от грамматики уасс до выполнимого кода — простого
языка программирования.
Дон Кнут в своей книге "ТЕХ: The Program" (Don Knuth. TEX:
The\ rogram. Addison-Wesley, 1986) описывает этот сложнейший текстовый
эоцессор, приводя всю программу целиком — около 13 000 строк на ascal
— в стиле "грамотного программирования", при котором пояснения
жбинируются с текстом программы, а для форматирования документами и выделения
соответствующего кода используются соответствующие эограммы. То же самое
для компилятора ANSI С проделано у Криса Фрейзера и Дэвида Хэнсона в книге
"A Retargetable С Compiler" (Chris raser, David Hanson. Л Retargetable
С Compiler. Addison-Wesley, 1995).
Виртуальная машина Java описана в книге Тима Линдхольма и Франк Еллина
"Спецификация виртуальной Java-машины", 2-е издание fim Lindholm,
Frank Yellin. The Java Virtual Machine Specification. 2"d ed. ddison-Wesley,
1999).
Кен Томпсон (Ken Thompson) описал свой алгоритм (это один из самых первых
патентов в области программного обеспечения) в статье legular Expression
Search Algorithm" в журнале Communications of the CM (11, 6, p. 419-422,
1968). Работа с регулярными выражениями весьма подробно освещена в книге
Джеффри Фридла "Mastering Regular xpressions" (Jeffrey Friedl.
Mastering Regular Expressions. O'Reilly, 1997).
JIT-компилятор для операций двумерной графики описан в статье эба Пайка,
Барта Локанти (Bart Locanthi) и Джона Рейзера CJonn eiser) "Hardware/Software
Tradeoffs for Bitmap Graphics on the Blit", губликованной в Software
— Practice and Experience (15, 2, p. 131-152, ;bruary 1985).
|