ФОРТ -- низкоуровневый расширяемый пользователем язык программирования и операционная система (языковая среда -- см. также некоторые реализации языков SmallTalk, Oberon и LISP), с момента своего появления разрабатывавшийся для маломощных компьютеров в системах управления различным оборудованием (так называемых встраиваемых системах, или embedded).
Достоинства:
- очень низкие требования к ресурсам даже для чисто интерпретируемого варианта;
- легко переносим: полноценная языковая среда (интерактивная командная среда, компилятор в упакованный или native машинный код, операционная система) способна работать на любой платформе всего с парой десятков Кб ОЗУ
- широкий выбор типа кода (native машинный, несколько вариантов упакованного, байт-код) позволяет подобрать характеристики под задачу. При использовании машинного или упакованного (шитого -- только адреса подпрограмм) кода и доступности на выполнение части перезаписывамой памяти позволяет писать на ассемблере процедуры, расширяющие систему
- крайняя простота языка позволяет легко написать компилятор Форта в байт-код и интерпретатор на любом языке программирования буквально за пару дней
- Форт является модифицируемым языком -- существуют прозрачные механизмы модификации компилятора при загрузке исходных текстов, что в сочетании с простотой языка позволяет значительно модифицировать работу компилятора (например на Форте очень просто пишутся ассемблеры, причем с очень богатыми возможностями по написанию макросов -- в них доступна вся функциональность языка)
- Форт можно рассматривать как мета-язык для создания проблемно-ориентированных языков высокого и сверх-высокого уровня
- простая модель виртуальной машины языка позволяет реализовать ее (полностью или частично) на аппаратном уровне: существуют десятки процессоров, поддерживающих язык на аппаратном уровне, в том числе и отечественные разработки
Недостатки:
- низкоуровневость базового языка
- низкая распространенность по сравнению с mainstream языками
Наиболее перспективные направления:
- использование Форт-системы как сверхкомпактной ОС для встраиваемых систем и мобильных устройств
- инструментальное средство для написания ассемблеров с мощными макро-возможностями (вплоть до написания языков программирования поверх ассемблера), языков прикладного уровня
- встраивание интерпретатора внутрь программ на любых языках и использование Форта как языка конфигурационных файлов, скриптов (программирование пользователем), при этом интерпретатор Форта является самым компактным по сравнению с другими схожими встраиваемыми языками (Tcl, Python, JVM)
Задачи рассылки:
- информировать разработчиков ПО (особенно для встраиваемых и мобильных систем) и программистов-любителей о наличии инструмента, совмещающего свойства операционной системы, полноценного легко расширяемого языка программирования и интерфейса командной строки (несложно дополняемой графическими и любыми другими функциями)
- помочь начинающим в освоении языка и можно сказать информационной технологии Форта
- помочь желающим написать свой Форт-компилятор или интерактивную систему
- увеличить доступность русскоязычных материалов по темам Форт-программирования, недостаточно или совершенно не изложенных в литературе (кросс-компиляция, написание ассемблеров и языков-расширений, оптимизация кода)
- привлечение кодеров к написанию программ и прикладных расширений языка
- участие в проекте Synergy по разработке легко переносимой операционной системы, используещей в качестве ядра форт-систему
Статистика
0 за неделю
Язык программирования (и ОС) ФОРТ (FORTH) обновление http://akps.ssau.ru/forth/book/html/
Информационный Канал Subscribe.Ru обновление http://akps.ssau.ru/forth/book/html/ Next: Contents Contents FFFF - язык и операционная система RU FIG, Понятов Д.А. forth@km.ru , public domain версия 31 August 2005 - Contents Введение версия 1 forth@km.ru версия 2 forth@km.ru Из [orange] Из перевода [thinking] Ю. А. Семенов ИТФ Технофорт Компьютер для начинающих Запоминаемость Мощность языка Абстрактность Управляемость Модульность История языка Основы языка О языке программирования Форт (Forth) Форт-слово Сте...
Язык программирования (и ОС) ФОРТ (FORTH) Ivan Mak Путь домой
Информационный Канал Subscribe.Ru Ivan Mak Путь домой Раздался металлический лязг. Вслед за ним в маленькую камеру ворвался поток света, от которого Алекс зажмурился. "Странно" -2 подумал он. В ту же секунду прозвучал жесткий голос охранника: -2 Hа выход! Алекс поднялся. В голове крутился только вопрос о времени. Как так? Почему Алекс не понял, что прошли десять дней? Он помнил только два дня. Охранник отдавал приказы, двигаясь позади. Стоять. Hалево. К стене. Алекс выполнял все молча. И все же что-то не т...
Язык программирования (и ОС) ФОРТ (FORTH) Литература
Информационный Канал Subscribe.Ru Литература O.J. Dahl, E.W. Dijkstra, and C.A.R. Hoare, `Structured Programming, London, Academic Press, 1972. Niklaus Wirth, "Program Development by Stepwise Refinement" `Communications of ACM, 14, No.4(1971, 221-27. W.P. Stevens, G.J. Myers, and L.L. Constantine, "Structured Design" `IBM Systems Journal, Vol.13, No.2, 1974. David L. Parnas, "On the Criteria To Be Used in Decomposing Systems into Modules" `Communications of the ACM, December 1972. Barbara H. Liskov and Ste...
Язык программирования (и ОС) ФОРТ (FORTH) Глава 1. Философия Форта
Информационный Канал Subscribe.Ru Глава 1. Философия Форта Форт является языком и операционной системой. Но это не все: он также и воплощение философии. Обычно философию не рассматривают как нечто, отдельное от Форта. Она не предшествовала Форту и не описывалась где-либо вне рассуждений о Форте, и даже не имеет другого имени, кроме как "Форт. Что она такое ? Как ее можно применять для решения задач программирования ? Перед тем, как ответить на эти вопросы, давайте сделаем 100 шагов назад и изучим некоторые...
Язык программирования (и ОС) ФОРТ (FORTH) Предисловие
Информационный Канал Subscribe.Ru Предисловие Программирование компьютеров может свести с ума. Другие профессии дают Вам прекрасные возможности наблюдать осязаемые результаты Ваших усилий. Часовщик может смотреть на свои зубчики и колесики, швея - на швы, ровно ложащиеся после каждого взмаха иглы. Но программист проектирует, строит и ремонтирует нечто воображаемое, призрачные механизмы, ускользающие от восприятия органами чувств. Наша работа происходит не в ОЗУ, не в программе-редакторе, а внутри нашей гол...
Язык программирования (и ОС) ФОРТ (FORTH) От переводчика
Информационный Канал Subscribe.Ru От переводчика Уже несколько лет я использую для программирования язык Форт. С первой же встречи с ним я был очарован и покорен его простотой, элегантностью и логичностью. И Форт пока ни разу не давал мне повода для разочарований. К сожалению, в нашей стране Форт знают и используют лишь считанные энтузиасты, чему в большой мере способствует отсутствие сколько-нибудь доступной литературы и программного обеспечения. Можно сказать много грустных слов о тенденциозности совреме...
Язык программирования (и ОС) ФОРТ (FORTH) Лео Броуди перевод Thinking FORTH в html
Информационный Канал Subscribe.Ru Лео Броуди Способ мышления - Форт Язык и философия для решения задач Leo Brodie Thinking FORTH A Language and Philosophy for Solving Problems Englewood Cliffs, N.J, Prentice-Hall, Inc, 1984 Перевод с английского С.Н.Дмитренко (Москва, 1993 г) Лео Броуди - писатель, программист и консультант, авторитет мирового масштаба в области языка программирования Форт. Он был техническим программистом в фирме FORTH, Inc. а с 1981 года стал независимым консультантом для фирм IBM, NCR и...
Язык программирования (и ОС) ФОРТ (FORTH) ForthOS is a complete, standlone operating system for the PC
Информационный Канал Subscribe.Ru http://forthos.org/ ForthOS is a complete, standlone operating system for the PC. It includes command line, compiler, debugger, editor, and filesystem. You can give it a test drive by booting the standalone CD (image provided so you can burn your own. If you like it, you can install it onto a disk partition and boot directly from your hard disk. ForthOS is the basis for the author's own experimental software work; unlike many other Forth systems, this one is a real tool in...
Язык программирования (и ОС) ФОРТ (FORTH) KF 332 - новая реализация конфигурируемого процессорного ядр
Информационный Канал Subscribe.Ru оригинал http://www.kc.ru/~tile/KF332.htm KF 332 - новая реализация конфигурируемого процессорного ядра Новости: VII/2005 Продолжение работ, проводимых в области разработки систем на кристалле и конфигурируемых процессорных ядер (софт-процессоров) привело к накоплению технических решений, которые в конечном итоге позволили несколько пересмотреть подходы к проектированию. Кроме того, этому же способствуют произошедшие в последние годы существенные изменения в области архите...
Язык программирования (и ОС) ФОРТ (FORTH) http://akps.ssau.ru/forth/vm/
Информационный Канал Subscribe.Ru http://akps.ssau.ru/forth/vm/ появилась минимальная версия интерпретатора байт-кода на С (виртуальная форт-машина) для начинающих осваивать встраивание Форта в программы и системы на других языках. Это самая минимальная версия (кое-каких необходимых команд все равно не зватает - добавлю позже, включает исходники движка (интерпретатора) на С, разделенные на файлы по типам команд, целевой компилятор (кросс-компилятор, ассемблер) написанный на Форте, и тестовую программку как...