<<
>>

Процедуры

Введение

Наконец-то мы принимаемся за хорошую главу!

К этому моменту мы изучили почти все основные особенности компиляторов и синтаксического анализа. Мы узнали как транслировать арифметические выражения, булевы выражения, управляющие конструкции, объявления данных и операторы ввода/вывода.

Мы определили язык TINY 1.3, который воплощает все эти возможности, и написали элементарный компилятор, который может их транслировать. Добавив файловый ввод/вывод мы могли бы действительно иметь работающий компилятор, способный производить выполнимые объектные файлы из программ, написанных на TINY. С таким компилятором мы могли бы писать простые программы, способные считывать целочисленные данные, выполнять над ними вычисления и выводить результаты.

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

Эти возможности, которые будут обсуждены в следующих двух главах, так сказать отделят мужчин от игрушек. «Настоящие» языки имеют более одного типа данных и они поддерживают вызовы процедур. Более чем любые другие, именно эти две возможности дают языку большую часть его характера и индивидуальности. Как только мы предоставим их, наши языки, TINY и его преемники, перестанут быть игрушками и получат характер настоящих языков, пригодных для серъезного программирования.

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

<< | >>
Источник: Креншоу Джек. Давайте создадим компилятор!. 1999

Еще по теме Процедуры:

  1. Схема «Процедуры комфортизации».
  2. Схема «Процедуры комфортизации».
  3. 3. Процедуры банкротства гражданина
  4. ИТАК, ПРОЦЕДУРА КОМФОРТИЗАЦИИ.
  5. ИТАК, ПРОЦЕДУРА КОМФОРТИЗАЦИИ.
  6. 28. Процедура наблюдения
  7. ПРОЦЕДУРЫ И РИТУАЛЫ
  8. Процедуры и техники.
  9. Процедура комфортизации («Послушный» и «непослушный» мозг»).
  10. 3.3. Процедура экспериментирования
  11. § 4. Порядок работы парламента. Законодательная процедура
  12. 5.3. Социометрические процедуры
  13. 3.2. Процедура рассмотрения и утверждения проекта
  14. 5. Основные процедуры банкротства
  15. 8.6.5. Продолжение процедуры
  16. 1.3.3. Процедура проведения
  17. 4.4. Процедура проведения
  18. Парламентская процедура. Законотворческая деятельность
  19. § 2. АЛГОРИТМИЗАЦИЯ ДИАГНОСТИЧЕСКИХ ПРОЦЕДУР