В. Источники информации
Список систем Форта, публикаций и организаций не является исчерпывающим, такой задачи и не ставилось. Скорее,-это список источников, с которыми авторы знакомы и которые они сочли полезными.
Системы Форта
Ниже рассмотрим системы Форта, которые предоставляют по крайней мере минимум средств для разработки программ. Мы не включили в перечень версии Форта, о которых мы не смогли получить достаточно информации для оценки, мы не ввели в список некоторые реализации Форта, которые не сочли отвечающими высоким требованиям. Но мы, вероятно, пренебрегли некоторыми версиями Форта, достойными упоминания. Если мы не упомянули вашего любимца, пожалуйста, простите нас. Информация о конкретной системе может быть также неполной. Например, мы полагаем, что к моменту выхода книги по крайней мере две из нижеупомянутых реализации Форта будут, вероятно, иметь версии, работающие на других ЭВМ. И мы упомянули только те улучшения, которые "выше нормы". Мы предполагаем, любая нормальная версия Форта имеет редактор, ассемблер, библиотеку для работы с числами двойной длины и т.д., хотя эти средства и не являются обязательными в соответствии со стандартами, большинство версий имеют также много полезных средств, которые мы не упомянули, потому что они специализированные, или в силу того. что их нельзя описать достаточно кратко. Таким образом, мы не упомянули об использовании в MMSFORTH операторов QUAN, массивов, условных структур и других сходных программных средств. Аналогично мы не описали слово из F83 VIEW, которое позволяет сразу найти блок с исходным текстом описаний нужного слова, сегментную структуру словаря HS/FORTH и расширенную версию MVPFORTH, комплексную и очень мощную систему разработки программ. Выбор подходящей версии Форт-системы может оказаться обескураживающей задачей, современные системы Форта имеют очень широкий спектр возможностей, и то, что является идеальной системой для одного задания, может оказаться менее удобным для другого. Нужно полагать, что на исследования при выборе системы будет затрачено значительное время.
К сожалению, в журналах не публикуются обзоры по системам Форта, как, скажем, по компиляторам Паскаля. Вам следует изучить литературу и обсудить ваши нужды с несколькими поставщиками. Если поставщик не будет обсуждать ваши проблемы, забудьте об этом, вы, вероятно не получите поддержки при решении ваших проблем после покупки. В некоторых случаях вы можете купить "голую" версию языка и расширять систему по мере необходимости, а в других случаях вы сможете купить копию документации, чтобы выяснить, имеет ли система то, что вам надо. Наконец, вы должны знать, что цена - не всегда мера ценности для Форта. F83 за 25 долл. или даже бесплатно в свободном доступе имеет некоторые возможности, которых нет в некоторых форт-системах ценой более 100 долл. Мы не упомянули одну систему с ценой более 200 долл.. так как нам кажется, что она не соответствует своей цене. В то время как наиболее продвинутая система polyFORTH II стоимостью несколько тысяч долларов предлагает фантастические возможности, потребности большинства программистов можно удовлетворить много более дешевой версией. Рекомендуется просмотреть следующий список в качестве введения, чтобы помочь вам получить больше информации.
FORTH, Inc. 2309 Pacific Coast Highway Hermosa Beach. CA 90254 (213) 372-8493 polyFORTH II. Нестандартный, но близок к Форт-79. Оборудование: слишком широкий список микро- и мини-ЭВМ, чтобы приводить его целиком. Продается по различным ценам с различным диапазоном возможностей и сервиса для пользователя. Особенности - очень широкий спектр возможностей, лишь немногие здесь описаны. Работает с ДОС или автономно, имеются многозадачный и многопользовательский режимы; поддержка баз данных; интерактивная графика; плавающая арифметика 8087. Замечания: это прямой потомок Форта Мура, разработанный компанией, которая была им основана. Хотя polyFORTH не является стандартным и в некотором смысле консервативным, не имеющим некоторых "фантастических" черт других версий, он, пожалуй, представляет собой наиболее профессиональную систему и используется для более сложных и изощренных задач, чем какая-то другая версия.
FORTH Interest Group (FIG) P.O. BOX 8231 Sen Jose, CA 95115 (408) 277-0668 FIGFORTH. Нестандартный, но фактически сам по себе стандарт. Оборудование: 1802, 6502, 6800, 6809, 68000, 8080. 8086/8, 9900. Alfa Micro, Apple II. Eclipse, IBM PC Nova, Pace, PDP-11, VAX, Z80. Для всех этих ЭВМ имеются тексты ассемблеров. Различные рабочие версии имеются в свободном доступе. Особенности: никакие усовершенствования FIG не поставляет. Существует множество усовершенствований в свободном доступе и много опубликовано и периодике FIG, "FORTH Dimensions". Замечания: это, пожалуй, самая распространенная Форт-система, на которой базируются многие коммерческие версии. Несмотря на распространение, он вряд ли пригоден для серьезного применения. FIGFORTH стал де-факто стандартом и усовершенствован многими пользователями.
Harvard Softworks P.O.Box 2579 Springfield, OH 45501 (513) 748-0390 HS/FORTH. Комбинация Форт-79 и Форт-83. Работает под операционной системой. Оборудование: IBM PC и совместимые с ней. Особенности: Исходные тексты в безблочных ДОС-файлах (возможна работа с файлами); средства отслеживания; быстродействующий оптимизатор (быстродействие близкое к машинному); графика; звуковое сопровождение; слова без заголовков; непосредственное пpoграммирование в машинных кодах; плавающая арифметика 8087; неограниченная возможность использования расширенной памяти. Замечания: HS/FORTH очень необычно (но эффективно) использует память, имеет необычную структуру словаря и некоторые другие уникальные черты.
Laboratory Microsystems lnc. P.O.Box 19430 Marina del Rey, CA 90295 (213) 306-7412 Следующие версии являются 16-битовыми: 68066 FORTH, 8080 FORTH, 8086 FORTH, Z80 FORTH, PC/POBTH. Следующие версии являются 32-битовыми: 6800Й FORTH+, 8086 FORTH+, PC/FORTH+. Все работают под ДОС и отвечают требованиям стандарта Форт-83. Оборудование: 68000, 8080, 8086/8, Z-80, CP/M, СР/М-86, СР/М- 68К, MS-DOS, 1MB PC и совместимые. Особенности: отладчик; возможность перекрестных ссылок; использование расширенной памяти; целевой компилятор; средства для работы с файлами; программы для плавающей арифметики; поддержка AMD 9511; графика; любые наборы символов; телекоммуникация; оверлеи словаря.
Micromotion 12077 Wilshire Boulevard Los Angeles, CA 90025 (213) 821-4340 MasterFORTH Форт-83. Работает под ДОС. Оборудование: Macintosh, IBM PC и совместимые, IBM PCjr, APPLE II, серии-СР/М, Commodore 64. Особенности: отладчик; декомпилятор; работа с файлами; описания без заголовков; перемещаемая область компиляции; графика; программы для плавающей арифметики; система перемещения модулей.
Miller Microcomputer Services 61 Lake Shore Roed Natick, MA 01760 (617) 653-6136 MMSFORTH Форт-79. Автономная версия. Возможна работа и с ДОС. Оборудование: TRS-80 модели I, III, 4; IBM PC и совместимые. Особенности: строки; графика; программы для работы с числами с плавающей точкой; арифметика с плавающей точкой 8087; возможность перекрестных ссылок; средства поиска; слова без заголовков; перемещаемая компиляция; адресация к расширенной памяти; произвольный доступ к диску; дисковые форматы по выбору пользователя; буферизатор вывода на принтер; поддержка баз данных; экспертные системы, система управления базами данных; процессор слов; возможность последовательной передачи данных.
Mountain View Press, Inc. P.O.Box 4656 Mountain View. CA 94040 (415) 961-4103 MVP-FORTH Форт-79. Версии для ДОС и автономного использования. Основная система в свободном доступе. Оборудование: CP/M, СР/М-86, MS-DOS, Apple II серия. Macintosh, IBM PC и совместимые. Commodore 64, NEC 8201, TRS- 80/100, HP 110. HP 150. Особенности: не все доступны для всех реализации. Кросскомпилятор; целевой компилятор; программа переноса; отладчик; средства отслеживания; декомпилятор; поддержка расширенной памяти; MS-DOS файл-интерфейс в автономном режиме; описания без заголовков; графика; программы для операций над числами с плавающей точкой; арифметика с плавающей точкой 8087: плавающая арифметика 9511; окна, поддержка системного ПЗУ; экспертная система; процессор слов. Замечания: базовый MVP-FORTH находится в свободном доступе и может быть получен через одну из многих групп пользователей. Фирма Mountain View Press является поставщиком других коммерческих Форт-систем, включая некоторые не упомянутые здесь.
Они являются хорошим источником информации о Форт-версиях, доступных на различных ЭВМ.
Next Generation Systems P.O. Box 2987 Santa Clara, CA 95035 (408) 241-5909 NGS FORTH Форт-79. Работает под ДОС. Оборудование: IBM PC и совместимые. Особенности: режим работы сходен с FIG-FORTH; адресация к расширенной памяти, отладчик; средство отслеживания; декомпилятор; графика.
No Visible Support Software Box 1344 2000 Center Street Berkeley, CA 94704 F83 Форт-83. Работает под ДОС. Оборудование: 8080 CP/M, 8086 CP/M, 68000 CP/M (все на 8- дюймовом диске), IBM PC и совместимые (5-дюймовый диск). Особенности: отладчик; декомпилятор; метакомпилятор; многозадачный режим; строки; теневые блоки. Замечания: свободный доступ; от пользователей можно получить различные реализации в разных дисковых форматах. Хотя и находится в свободном доступе, он является намного более полным, чем FIGFORTH или базовый пакет MVPFORTH (впрочем, он не столь всеобъемлющ, как "развитый" MVPFORTH, который доступен от Mountain View Press). "No Visible Support Software" (" Программа без какой-либо видимой поддержки") - как раз то, что подразумевается именем. Здесь нет какой-либо поддержки пользователя или документации, кроме того, что имеется в коротком текстовом 'файле и в теневых блоках на диске. Теневые блоки, однако, весьма исчерпывающи.
Раrsеc Research Drawer 1776 Fremont, CA 94538 Dealer, Mountain View Рress SuperFORTH 64+AI Форт-79. Работает под ДОС. Оборудование: Commodore 64. Особенности: арифметика с плавающей точкой; графика; строки; отладчик; средство отслеживания; декомпилятор; генерация программ, загружаемых в ПЗУ.
Quest Research Inc. P.O.Box 2553 Huntsville. AL. 35804 (204) 539-8086 FORTH-32 Форт-79. Работает под ДОС. Оборудование: IBM PC и совместимые. Особенности; декомпилятор; отладчик; графика; программа перемещения; полномасштабное применение 32-разрядного адресного пространства памяти; арифметика с плавающей точкой 8087; целевая компиляция.
Shaw Laboralories), Ltd. 24301 Southland Drive, *216 Hayward, CA 94543 (415) 276-5953 TaskFORTH Форт-79, Форт-83 с перекрытием.
Работает под ДОС. Оборудование: СР/М в различных форматах, MS-DOS. Особенности: многозадачный и многопользовательский режимы; отладчик; средства отслеживания; декомпилятор; управление базами данных; иерархическая система файлов; строки; улучшенное управление дисплеем и принтером; целевой компилятор; кросскомпилятор; адресация к расширенной памяти.
Ubiquitous Systems 13333 Belevue-Redmond Road, N.E. Bellcvue. WA 98005 (206) 641-8030 u4th Форт-83 (с ограничениями). Работает под ДОС. Оборудование: различные UNIX и XENIX системы. Plexus. IBM- XT/AT, Intel 286/310, SUN. Tendy 6000. TRS-80 16В, VAX. Особенности: написано на Си, новые примитивы можно написать на Си; целевая компиляция; передача команд в систему UNIX; компиляция в Си-коды; поддержка, где нужно, 32-разрядной адресации; строки; работа в верхнем и нижнем регистрах; компиляция файлов и блоков; динамическое перераспределение памяти; исходные тексты для дополнений, ориентированных на объектные коды.
WL Computer Sytems 1910 Newman Road West Lafayette. IN 47906 (017) 494-2564 WL FORTH Форт-79. Работает под ДОС. Оборудование: IBM PC и совместимые. Особенности: арифметика с плавающей точкой 8087.
Публикации
Мы полагаем, что мы включили все основные книги и периодические издания, которые были к моменту написания книги и которые посвящены Форту. Мы также включили публикации, которые сочли полезными в качестве справочных пособий при работе с Фортом или которые включают материалы по Форту Многие из материалов можно получить от FORTH Interest Group (Группа пользователей Форта), фирм Miller Microcomputer Services и Mountain View Press, а также от других поставщиков Форт-систем (адреса приведены выше).
Книги
1. Anon. 1980. FORTH-79. Публикация группы по стандартам Форта. FORTH Interest Group, Sant Carlos, Сalif. Тексты стандартов для Форт-79. 2. Anon. 1983a. FORTH-83 Standard. Публикация группы по стандартам Форта. Mountain View Press, Mountain View, Calif. Тексты стандартов для Форт-83. 3. Anon. 1983b. MVP-FORTH Source Listing.
Mountain View Press, Mountain View, Calif. Исходный текст ассемблера для базовых MVP-FORTH систем для 8080, IВМ PC и Apple II. 4. Anon. 1980. [без заголовка] FORTH Interest Group, Sant Carlos, Calif. Собрание информационных перепечаток из журнала "BYTE", включая выпуск, посвященный языку Форт. 5. Anderson A., Tracy M. 1984. FORTH Tools. Vol. 1 .Micromotion. Los Angeles, Calif. Вводный текст, рассматривающий только Форт-83. Не предполагает какого-либо знания ЭВМ. Хорошие упражнения и примеры. Не обсуждаются более сложные темы, такие как ассемблер, работа внешнего и внутреннего интерпретаторов и т.д.. но в остальном довольно полное изложение предмета. 6. Brodie L. 1981. Starting FORTH. Prentice-Hall. Englewood Cliffs N.J. Введение в Полифорт с некоторыми упоминаниями отличий от FIGFORTH и Форт-79. Не предполагает предварительного знания ЭВМ. Легко читается, стиль весьма живой. Сложные темы рассмотрены не слишком подробно. Ограниченное число примеров и упражнений. Указатель неполный. Первая достаточно общая книга по Форту и поэтому наиболее популярная. Переведена на русский язык. 7. Brodie L. 1984. Thinking FORTH. Prentice-Hall, Englewood Cliffs N.J. Философия и способ мышления при решении проблем на Форте. Обсуждение составления программ со многими примерами, советами и программными процедурами. Способствует размышлению. 8. Cassady J.J. 1981. MelaFORTH. Распространяется фирмами Mountain View Press, Mountain View, Calif. Исходные тексты метакомпилятора (целевой и кросскомпилятор), написанные на FIGFORTH. 9. Chirlian P. 1983. Beginning FORTH. Matrix. Beaverton, Oreg. Введение, которое не предполагает какого-либо знания в области ЭВМ. Элементарный материал изложен хорошо, с примерами и упражнениями, но наложение тем промежуточного уровня, таких как компиляция и интерпретация, а также слов типа IMMEDIATE, [COMPILE] и COMPILE, недостаточно. Не обсуждаются темы высокого уровня, такие как структура словаря, работа Форта или ассемблера. Хороший указатель. 10. Derick M.
and Baker L. 1982. FORTH Encyclopedia. Mountain View Press, Mountain View, Calif. Детальное описание всех слов FIGFORTH с диаграммами. Очень полезно для понимания того, как работают слова Форта. 11. Edmunds R. 1985. The Prentice-Hall Standard Glossary of Computer Terminology. Prentice-Hall, Englewood Cliffs N.J. Даются общие определения и обсуждается терминология вычислительной техники, включая многие малоизвестные термины. Терминология Форта не рассмотрена. 12. Feierbach G., Thomas P. 1985. FORTH Tools and Applications. Reston, Reston.Va. Краткое, но полезное обсуждение и примеры разработки программ Форта, отладка и приемы программирования. Полезные программы. 13. Haydon G. 1983. All about FORTH. Mountain View Press. Montain View, Calif. Описание, обсуждение и примеры использования всех слов MVP-FORTH. Сравнение слов MVP-FORTH со словами Форт-79 и FIGFORTH. Очень полезно для понимания того, как работает язык. 14. Hofert D. 1985. A Bibliography of FORTH Referances. 2nd ed. The Institute for Applied FORTH Research. Inc.. Rochester. N.Y. Очень полезный, практически полный список перекрестных ссылок на когда-либо опубликованные статьи по Форту. 15. Huang Т. 1983. And So FORTH. Central Book Co., Taipei. Taiwan. Странное, но полезное и очаровательное собрание материалов по истории форта, примеры программ, приложения языка и т.д. Хотя рассматривается как учебник для колледжей, его изложение слишком фрагментарно для этих целей. Пригоден для опытных пользователей Форта. 16. Knecht К. 1982. Introduction to FORTH. Howard W. Sams, Indianapolis, Ind. Краткое введение, основанное на теперь уже устаревшей и нестандартной версии MMSFORTH. Полезные и интересные примеры, но мало или совсем нет материалов по темам промежуточного и высокого уровня сложности. 17. Lipschutz S. 1982. Essential Computer Mathematics. Schaum's Outline Series, McGraw-Hill, New York. Сжатый, но очень полезный краткий курс практической математики в приложении к ЭВМ, где рассмотрены системы счисления, двоичная арифметика, кодирование чисел и букв, булева алгебра, а также векторы и матрицы. 18.
Loeliger R. 1981. Threaded Interpretive Languages. Byte books, Peterborough, N.H. Таинственное, трудночитаемое, перегруженное жаргоном, но очень ценное описание применения цепных интерпретивных языков, в частности Форта. 19. McCabe C.K. 1983- FORTH Fundamentals. Dilithiuro Press, Beaverton, Oreg. Введение, предполагающее небольшое знание ЭВМ, охватывает FIGFORTH и Форт-79. Изложение примерно на уровне книги Броуди с недостаточным изложением продвинутых тем. Плохой указатель делает книгу непригодной для поиска дополнительных материалов. 20. Morgan C. Waite M. 1982. 8086/8088 16-Bit Microprocessor Primer. Byte/McGraw-Hill, Peterborough. N.H. Превосходное изложение архитектуры и набора команд Intel 8088, которое может помочь пониманию нашего описания ассемблера, в гл. 16. 21. Scanlon L. 1982. FORTH Programming. Howard W. Sams, Indianapolis, Ind. Введение в FIGFORTH и Форт-79, которое предполагает некоторое знание вычислительной техники. Рассмотрены основы и некоторые темы промежуточного уровня, совсем оставлены без внимания такие темы, как структура словаря, интерпретаторы или программирование на ассемблере. 22. Ragsdale W. 1980 FIGFORTH Installation Manual. FORTH Interest Group, San Carlos, Calif. Исходные тексты FIGFORTH. Очень полезна для понимания того, как работает Форт. 23. Reymann J. 1983. Understanding FORTH. Alfred Publishing Co., Sherman Oaks, Calif. Короткая брошюра, дающая представление об основных особенностях форта для тех, кто не знаком с языком. 24. Stevens W. 1979. A FORTH Primer. Distributed by the FORTH Interest Group, San Carlos, Calif. Книга извеестна под названием "Kilt Peak Primer", это описание форта, история его создания Чарльзом Муром в Национальной обсерватории Kin Peak. Хотя оно и несколько устарело, в нем содержатся интересные мысли и рассмотрена перспективы развития языка. 25. Ting С. 1983. FORTH Notebook. Offete Enterprises, San Maleo, Calif. Собрание необычных и интересных программ на Форте. 26. Winfield A. 1983. The Complete FORTH.
Sigma/Wiley, New York. Введение, охватывающее Форт- 79 вплоть до промежуточного уровня сложности. Прекрасные примеры и объяснения. Изложение более сложных тем, касающихся того, как работает Форт, ограниченно или отсутствует вовсе. 27. Zaks К. 1980. How to Program ihe Z80. SYBEX, Berkeley, Calif. Превосходное изложение архитектуры и набора команд Z-80, которое поможет в понимании нашего описания ассемблера в гл. 16.
Периодика
Существуют два периодических издания, целиком посвященные языку Форт. "FORTH Dimensions" - журнал, выпускаемый ежемесячно объединением FORTH Interest Group (FIG см. ниже). В нем содержится широкий круг публикаций - от вводных учебных материалов до исходных текстов ассемблеров, метакомпиляторов и т,д. Здесь достигнут прекрасный компромисс между материалами для начинающих и довольно серьезными статьями. Старые, весьма полезные номера можно получить от FIG. Институт прикладных исследований Форта (см. ниже) ежеквартально выпускает профессиональный журнал "The Journal of FORTH Applications and Research". Он включает в себя присылаемые статьи обычно высокого уровня по основополагающим и теоретическим темам. Существуют ежегодные публикации материалов профессиональных конференцийFORTH Interest Group публикует журнал FORML Conference Proceedings", где содержатся статьи, представленные на ежегодное собрание FORTH Modification Laboratory. Статьи имеют тот же уровень, что и в "FORTH Dimensions". Материалы ежегодной Рочестерской конференции по Форту публикуются институтом прикладных исследований по Форту. Хотя трудно точно оценить, статьи близки по уровню "Journal of FORTH Applications and Research". Два универсальных журнала часто содержат материалы по Форту. Журналы "Dr, Dobbs Journal" и "Computer Language" дают некоторое число публикаций по Форту в большинстве номеров, и оба обещают публиковать ежегодно один номер, целиком посвященный Форту. Организации Существуют две организации программистов на Форте.Их адреса: FORTH Interest Group (FIG) P.O. Box 8231 San Josу. CA 95115 и The Insliliite for Applied FORTH Research, Inc. 70 Elmwood Avenue Rochester, NY 14611 Их деятельность описана во введении. Короче говоря, общество FIG является, скорее, любительской организацией. Оно ответственно за распространение FIGFORTH, публикует "FORTH Dimensions", организует встречи, такие как FORML, существую' отделения или группы любителей по всему миру. "The Institute" ставит целью повысить качество применения Форта. Он организует Рочестерские конференции и публикует "Journal of FORTH Applications and Research".