Лекции по построению компилятора на Pascal

ВЕРХНИЙ УРОВЕНЬ


Одна из самых больших ошибок людей при нисходящем проектировании заключается в неправильном выборе истинной вершины. Они думают, что знают какой должна быть общая структура проекта и поэтому они продолжают и записывают ее.

Всякий раз, когда я начинаю новый проект, я всегда хочу сделать это в самом начале. На языке разработки программ (program design language - PDL) этот верхний уровень походит на что-нибудь вроде:

     begin

       solve the problem

     end

Конечно, я соглашусь с вами, что это не слишком большая подсказка о том, что расположено на следующем уровне, но я все равно запишу это просто для того, чтобы  почувствовать, что я действительно начинаю с вершины.

В нашем случае, общая функция компилятора заключается в компиляции законченной программы. С этого начинается любое определение языка, записанное в БНФ. На что походит верхний уровень БНФ? Хорошо, это немного зависит от транслируемого языка.

Давайте взглянем на Pascal.



Содержание раздела