ФОРТ -- низкоуровневый расширяемый пользователем язык программирования и операционная система (языковая среда -- см. также некоторые реализации языков SmallTalk, Oberon и LISP), с момента своего появления разрабатывавшийся для маломощных компьютеров в системах управления различным оборудованием (так называемых встраиваемых системах, или embedded).
Достоинства:
- очень низкие требования к ресурсам даже для чисто интерпретируемого варианта;
- легко переносим: полноценная языковая среда (интерактивная командная среда, компилятор в упакованный или native машинный код, операционная система) способна работать на любой платформе всего с парой десятков Кб ОЗУ
- широкий выбор типа кода (native машинный, несколько вариантов упакованного, байт-код) позволяет подобрать характеристики под задачу. При использовании машинного или упакованного (шитого -- только адреса подпрограмм) кода и доступности на выполнение части перезаписывамой памяти позволяет писать на ассемблере процедуры, расширяющие систему
- крайняя простота языка позволяет легко написать компилятор Форта в байт-код и интерпретатор на любом языке программирования буквально за пару дней
- Форт является модифицируемым языком -- существуют прозрачные механизмы модификации компилятора при загрузке исходных текстов, что в сочетании с простотой языка позволяет значительно модифицировать работу компилятора (например на Форте очень просто пишутся ассемблеры, причем с очень богатыми возможностями по написанию макросов -- в них доступна вся функциональность языка)
- Форт можно рассматривать как мета-язык для создания проблемно-ориентированных языков высокого и сверх-высокого уровня
- простая модель виртуальной машины языка позволяет реализовать ее (полностью или частично) на аппаратном уровне: существуют десятки процессоров, поддерживающих язык на аппаратном уровне, в том числе и отечественные разработки
Недостатки:
- низкоуровневость базового языка
- низкая распространенность по сравнению с mainstream языками
Наиболее перспективные направления:
- использование Форт-системы как сверхкомпактной ОС для встраиваемых систем и мобильных устройств
- инструментальное средство для написания ассемблеров с мощными макро-возможностями (вплоть до написания языков программирования поверх ассемблера), языков прикладного уровня
- встраивание интерпретатора внутрь программ на любых языках и использование Форта как языка конфигурационных файлов, скриптов (программирование пользователем), при этом интерпретатор Форта является самым компактным по сравнению с другими схожими встраиваемыми языками (Tcl, Python, JVM)
Задачи рассылки:
- информировать разработчиков ПО (особенно для встраиваемых и мобильных систем) и программистов-любителей о наличии инструмента, совмещающего свойства операционной системы, полноценного легко расширяемого языка программирования и интерфейса командной строки (несложно дополняемой графическими и любыми другими функциями)
- помочь начинающим в освоении языка и можно сказать информационной технологии Форта
- помочь желающим написать свой Форт-компилятор или интерактивную систему
- увеличить доступность русскоязычных материалов по темам Форт-программирования, недостаточно или совершенно не изложенных в литературе (кросс-компиляция, написание ассемблеров и языков-расширений, оптимизация кода)
- привлечение кодеров к написанию программ и прикладных расширений языка
- участие в проекте Synergy по разработке легко переносимой операционной системы, используещей в качестве ядра форт-систему
Статистика
1 подписчиков
0 за неделю
0 за неделю