КулЛиб - Классная библиотека! Скачать книги бесплатно
Всего книг - 710800 томов
Объем библиотеки - 1390 Гб.
Всего авторов - 273984
Пользователей - 124948

Новое на форуме

Новое в блогах

Впечатления

serge111 про Лагик: Раз сыграл, навсегда попал (Боевая фантастика)

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

Рейтинг: 0 ( 0 за, 0 против).
medicus про Aerotrack: Бесконечная чернота (Космическая фантастика)

Коктейль "ёрш" от фантастики. Первые две трети - космофантастика о девственнике 34-х лет отроду, что нашёл артефакт Древних и звездолёт, на котором и отправился в одиночное путешествие по галактикам. Последняя треть - фэнтези/литРПГ, где главный герой на магической планете вместе с кошкодевочкой снимает уровни защиты у драконов. Получается неудобоваримое блюдо: те, кому надо фэнтези, не проберутся через первые две трети, те же, кому надо

  подробнее ...

Рейтинг: 0 ( 0 за, 0 против).
Влад и мир про Найденов: Артефактор. Книга третья (Попаданцы)

Выше оценки неплохо 3 том не тянет. Читать далее эту книгу стало скучно. Автор ударился в псевдо экономику и т.д. И выглядит она наивно. Бумага на основе магической костной муки? Где взять такое количество и кто позволит? Эта бумага от магии меняет цвет. То есть кто нибудь стал магичеть около такой ксерокопии и весь документ стал черным. Вспомните чеки кассовых аппаратов на термобумаге. Раз есть враги подобного бизнеса, то они довольно

  подробнее ...

Рейтинг: 0 ( 0 за, 0 против).
Stix_razrushitel про Дебров: Звездный странник-2. Тропы миров (Альтернативная история)

выложено не до конца книги

Рейтинг: 0 ( 0 за, 0 против).
Михаил Самороков про Мусаниф: Физрук (Боевая фантастика)

Начал читать. Очень хорошо. Слог, юмор, сюжет вменяемый.
Четыре с плюсом.
Заканчиваю читать. Очень хорошо. И чем-то на Славу Сэ похоже.
Из недочётов - редкие!!! очепятки, и кое-где тся-ться, но некритично абсолютно.
Зачёт.

Рейтинг: +2 ( 2 за, 0 против).

Руководство по программированию на Форте [Илья Тарасов] (fb2) читать постранично


 [Настройки текста]  [Cбросить фильтры]

Илья Тарасов РУКОВОДСТВО ПО ПРОГРАММИРОВАНИЮ НА ФОРТЕ

1. Основные сведения о языке

Язык программирования Форт (Forth) появился в 1970 г. благодаря работам Чарльза Мура. К моменту создания первого транслятора Форта уже существовали языки программирования третьего поколения, к которым относятся, в частности, Си и Паскаль. Язык, разработанный Муром, настолько отличался от них, что был отнесен к языкам программирования четвертого поколения, или Fourth generation level. Однако компьютер, использовавшийся для создания первого транслятора, допускал максимум пять символов в обозначениях, поэтому название Fourth («четвертый») было сокращено до Forth. Быстрый рост популярности Форта приходится на 70-е годы, когда оказалось, что при весьма умеренной сложности разработки транслятора этот язык обеспечивает хорошую альтернативу программированию на языке ассемблера. На протяжении своего существования Форт использовался для решения широкого ряда задач. В настоящий момент наиболее перспективными областями его применения являются управление в автоматизированных системах, в том числе на базе микроконтроллеров, построение интерпретирующих систем и скриптовых языков, создание вычислительных и графических программных пакетов.

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

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

Форт не является просто «еще одним языком», который отличается только экзотическим синтаксисом. В действительности все синтаксические особенности этого языка преследуют одну цель – обеспечить максимально простое построение программного кода. Полноценный транслятор Форта, включающий в себя интерпретатор, компилятор и основные библиотеки, можно создать в пределах десяти килобайт. Полноценные трансляторы для 32-разрядных платформ, включающие в себя расширенные библиотеки и полноценную поддержку возможностей операционной системы, занимают около 30 килобайт. Все это является следствием максимальной простоты используемых при компиляции правил, однако взамен приходится использовать чуть усложненный по сравнению с привычным синтаксис. Следует иметь в виду, что усложненная для программиста запись конструкций языка является в то же время предельно упрощенной для транслятора. В действительности Форт отличается тем, что он ориентирован не на синтаксис, а на удобство выполнения процессором своих команд.

Основу программной модели Форта можно выразить с помощью двух понятий – словарь и отдельный стек данных. Именно они определяют свойства этого языка.

Словарь Форта – это просто набор подпрограмм, каждая их которых имеет свое имя. Подпрограммы организованы в цепной список, что дает возможность поиска по имени. Список является однонаправленным и поиск ведется с конца. Исполняемый участок кода, таким образом, однозначно определяется именем нужной подпрограммы. Весь исполняемый код Форта организован в виде таких именованных блоков, которые называются словами. Слова обычно выполняют какую-то простую операцию, и могут вызывать другие слова, определенные в словаре ранее. Таким образом, Форт не производит разделения на процедуры, функции, управляющие и зарезервированные конструкции и т.п. Фрагмент текста в любом случае рассматривается им как слово из своего словаря. В процессе компиляции словарь можно дополнять.

Второе понятие – стек данных – неразрывно связано с первым. Действительно, при организации всего