Последний Херес (ledernierheros) wrote,
Последний Херес
ledernierheros

Размер яиц и начальный курс программирования на языке Форт

Йоды магистра речи тайна раскрыта, оказывается, на форте программист старый есть он просто.

Решил освежить своё знание языка Форт (языка Форт знание своё освежить решил). А то работать-то приходилось с ним много, но происходило это всё время авральными темпами и учиться приходилось выполняя непосредственно работу.

Ещё со школьной поры стоит у меня на полке книга Л. Броуди "Начальный курс программирования на языке Форт". Проблема только что полка эта сейчас от меня удалена на 5 тыс км, но не беда - книга есть и в электронном виде, например тут: http://www.nncron.ru/book/sf/ . Так вот, если ещё кто решил вдруг изучать Форт, читать эту книгу на русском языке, как минимум из этого источника, не надо: там есть опечатки и фактические ошибки.

Например, в главе 4:
Слово ?DUP дублирует вершину стека только в том случае, если там находится нулевое значение.
Конечно же имеется ввиду ненулевое значение.

В той же главе в в разборе конструкции РАЗМЕР-ЯИЦ (шутка не моя, программа действительно так называется) есть момент, который я при первом прочтении понял неправильно:

Можно ли удалить последний оператор DUР с тем, чтобы число убиралось из стека последней операцией сравнении, и оператор DROP? Нет, а почему?

Наше определение организовано таким образом, что оно легко воспринимается человеком. Большинство программирующих на Форте скорее смирятся с потерей памяти в блоке из-за пропусков между словами (блоков много), чем допустят то, чтобы их программы выглядели запутаннее, чем они есть на самом деле.

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

В сети есть оригинал книги переработанный в 2003 году. Там риторического вопроса про DUP и DROP нет. Интересно, добавили ли его при переводе наши, или убрали при переработке ихние?

В общем, пока что начинающим изучать Форт рекомендую читать эту книгу на английском. Она доступна онлайн без смс и регистрации абсолютно легально здесь: http://home.iae.nl/users/mhx/sf.html
Tags: forth, компьютерное
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments