Способ мышления-Форт



         

Глава 6. Фрагментация - часть 21


Это требует добавления переменной и некоторых удобочитаемых слов для установки содержимого этой переменной. Итак:

VARIABLE ПЕРО : РИСОВАТЬ ASCII * ПЕРО ! ; : СТИРАТЬ BL ПЕРО ! ; : СЛОЙ ШИРИНА 0 DO ПЕРО @ EMIT LOOP ;

Определение КВАДРАТа, так же, как и последующего кода, остается неизменным. Такой подход дает синтаксис

( х у ) РИСОВАТЬ КВАДРАТ

или

( х у ) СТИРАТЬ КВАДРАТ - 199 -

Переходя от прямо указанного числа к переменной, содержащей нужной значение, мы добавили уровень подвижности. В нашем случае мы его добавили "задним числом", увеличив уровень сложности слова СЛОЙ без утяжеления определения. Концентрируясь в данный момент времени на одной проблеме, Вы разрешаете каждое из измерений более эффективно. Если в Ваших размышлениях присутствует ошибка, проблему легче увидеть, если она не загорожена еще не испытанной, неопробованной стороной Вашего кода.

------------------------------------------------------------ СОВЕТ Не меняйте слишком многое за один раз. ------------------------------------------------------------

При редактировании программы - добавлении новой функции или исправлении чего-нибудь - часто хочется взять и подправить одновременно еще несколько других мест. Наш совет: так не делайте. В каждом своем цикле редактирования-компиляции производите столь мало изменений, сколько только можете. Не забывайте проверять результаты каждой ревизии перед продолжением. Поразительно, насколько часто бывает достаточно проделать всего три невинных исправления только для того, чтобы, перекомпилировав код, убедиться в том, что ничего не работает! Внесение изменений по одному за раз дает гарантии того, что, когда что-то перестанет работать, Вы будете знать причину.

------------------------------------------------------------ СОВЕТ Не пытайтесь слишком рано превзойти все пути для факторизации. ------------------------------------------------------------

Кое-кто удивляется, почему большинство Форт-систем не имеют определяющего слова МАССИВ (ARRAY). Причина состоит в вышеприведенном правиле.




Содержание  Назад  Вперед