В качестве примера рассмотрим фрагмент кода, выполняющий построение синтаксического дерева функции. На языке C он может выглядеть так:
то же самое на придуманном автором языке Context:
Обратите внимание на то, что в обоих фрагментах сознательно сделаны различные отступы при записи операторов присваивания значения и адреса в строках 3 и 4. Возможны и иные формы записи тех же действий. Вопрос в том, какая форма определения указателя и присваивания ему адреса (строки 1 и 4) представляется Вам наиболее понятной:
Здесь Dict - массив структур, поле pNode - слово, @ - префиксный, а ^ - постфиксный оператор вычисления адреса.
В ряде языков программирования ( C/C++/... ) используются операторные скобки ( {...} / begin...end ), используемые когда нужно поместить более одного оператора внутрь управляющей конструкции ( if / while / ... ). В других языках ( Modula/Basic/... ) любое число операторов может быть помещено внутрь управляющей конструкции без использования скобок. В языке Pascal используются оба варианта ( сравните while и repeat/until ). Если скобки не используются, управляющие конструкции зывершаются специальными ключевыми словами ( end / endif / enddo / ... ). Например
Какая из форм управляющих конструкций представляется Вам наиболее удобной: