– Операторы чтения файлов FILES и FIELD.
– Другие операторы, которые с ходу не вспомнить, но которые будут описаны по ходу настоящей книги.
– Другие операторы, которые с ходу не вспомнить и которые не будут описаны в книге, но которые вы наверняка найдете сами, если будете копаться в руководстве и справке.
2. Команды запуска процессов. Эти команды начинаются с имени соответствующего процесса, перед которым (ожидаемо) должен присутствовать восклицательный знак. Например, процесс EXTRA запускается командой `!EXTRA`.
Команды будут упомянуты и более подробно описаны по мере возникновения в них необходимости согласно логике изложения материала. Более «сухое» и официальное описание команд можно найти в справочных материалах.
Ограничения
Сразу пару слов об ограничениях (а вы думали, что все так просто?). До некоторой версии (мы сами не заметили до какой) длина одной строки в макросе не должна была превышать 80 символов. Причина такого ограничения, вероятно, уходила корнями в седую древность9 (если кто не знал, то код Datamine минимум до версий Datamine Studio 3.* был написан на практически «мертвом» Visual Fortran). Все, что выходило за пределы 80 символов, Datamine нагло игнорировал. С некоторых пор это ограничение снято, но мы бы рекомендовали его придерживаться с целью обратной совместимости – вдруг ваш макрос попадет в руки пользователю, который не в курсе, что вышли новые версии Datamine. Ну и плюс: если строка вашего макроса слишком длинная, читать его не очень удобно. Это не единственное ограничение, остальные будут описаны в подходящий момент.
Алгоритмы: что это и какие бывают
Алгоритм можно определить как набор правил для решения некоторой задачи. Или по-другому: алгоритм – это идея, тогда как конкретный макрос – его реализация.
Алгоритмы принято делить на:
– Линейные алгоритмы. Самый простой тип. Просто последовательность команд, выполняемых одна за другой. После первой команды всегда выполняется вторая, после второй всегда выполняется третья и т. д. Линейный алгоритм используется, когда все ясно и никаких вариантов развития событий не предполагается.
– Алгоритмы с ветвлением. Используется при возникновении вариантов развития событий.
если пойдет дождь – я поеду на автобусе,
если будет солнечно – прогуляюсь пешком,
если друзья предложат выпить пива – вообще никуда не пойду.
– Циклические алгоритмы. Описывают процессы, повторяющиеся много раз.
– «Каждый год 31 декабря мы с друзьями ходим в баню» – то есть один раз указывается действие, а затем сообщается, что это действие исполняется некоторое количество раз.
– Алгоритмы с подпрограммами. Перефразируя известного киноперсонажа, можно сказать: «Точно такие же, как и циклические, но другие». Об этом чуть позже.
При написании макросов вы будете писать обычные линейные алгоритмы, алгоритмы с ветвлением и, возможно, будете использовать циклы и подпрограммы. Обычно достаточно большой макрос содержит все разновидности