http://hydra.marketsite.ru/dimas/doc/books/programming/shen/contents_shen.html
(ссылку углядел у
Двадцать лет назад я ходил на семинар по логике, который вели Семенов и Шень. Впечатление было сильное, после этого даже решил идти на кафедру логики к Успенскому, но вовремя передумал и пошел на ТФФА.
В книге Шеня упоминается Кушниренко. С Анатолием Георгиевичем я знаком не знаю уж сколько времени, лет двадцать пять, наверное. С Юркой Кушниренко я учился в одном классе, и Анатолий Георгиевич вел у нас в школе кружок по программированию. Вместе с Геной Лебедевым он опробовал на нас новый (в то время) мехматский курс - смесь объектного программирования и технологии "сверху вниз" (в терминах "исполнителей", "предписаний", "декомпозиции" и т.п.).
Книжка Кушниренко и Лебедева "Программирование для математиков" до сих пор у меня на столе лежит. В прошлом году я взял оттуда идею стекового разбора формул и сделал для нашей системы компилятор формул с настраиваемой грамматикой.
Дальше ассоциации ведут меня совсем уж в сторону от Шеня. Но все-таки напишу.
Возможно, рекурсивный разбор для промышленных целей подходит больше, но стековый мне понравился простотой, красотой, возможностью пошаговой отладки и отсутствием необходимости передавать кучу параметеров. Фактически вместо стека вызова (как в рекурсивном разборе) вручную поддерживаются стеки лексем, и получается наглядно и просто