Что такое Forth?
История создания языка программирования.
“… С 1968 года Мур работал в Национальной радиоастрономической обсерватории (англ.) (NRAO), участвуя в разработке программ сбора и обработки получаемых радиотелескопом данных. В 1970 вместе с Geoffrey C. Leach им была создана программа FORTH для Burroughs B-5500, ставшая первой реализацией языка[4]. В 1971 году он совместно с Элизабет Рейсер (англ. Elizabeth Rather) основал компанию FORTH Inc. https://www.forth.com, занимающуюся развитием языка. В течение 1970-х годов Мур перенес Forth на десятки процессорных архитектур. …”
Мой первый опыт запуска языка Forth состоялся в институте радио-приёма и акустики в операционной системе CP/M-82 на 8-разрядном процессоре Intel 8080.
Это был целочисленный FORTH-83. Введя числа в обратной польской нотации, получил первый результат вычисления. В книжном магазине обнаружил книги по языку Forth и долго изучал.
Сотрудкники вычислительной кафедры ЛИТМО города Лениграда в начале 90-х годов выпускали компьютерные классы на процессоре x86 с терминалом на язык Forth для школьных классов по информатике.
“… В 1983 Мур основал Novix Inc. и разработал процессор NC4000. Архитектура была лицензирована компанией Harris Semiconductor, которая изготовила на её основе радиационно-стойкий процессор RTX2000 со стековой организацией, использовавшийся в нескольких космических миссиях NASA. …”
Стал просматривать историю о языке Forth. Многие ссылки на сайт сейчас недоступны. Технологии, увы, стареют как и люди.
Неожиданно открыл для себя описание Веб-устройства на основе языка Forth. Оказалось, что название “Интернет-вещь IoT” это лишь производная от Web-Device.
“… Мур основал iTv Corp, одну из первых компаний по разработке Веб-устройств. В 1996 году для iTv он разработал процессор i21. …”
“… VTech модель 80-36447 — это типичное интернет-устройство. На консоли особо выделена кнопка, которая вызывала открытие страницы веб-портала Yahoo! …”
Современные микроконтроллеры и Forth.
Мощности и возможности компьютеров увеличились революционно. Язык Forth редко используются в проектах.
“Умная пыль” - крошечные микроконтроллеры выпускаются миллиардами.
Программисты создают “прошивки” целевой код для микроконтроллеров на языках Ассемблера и Cи. Для создание бинарного кода для микроконтроллера необходимо развернуть рабочее место программиста: установить редакторы исходного кода, компиляторы, линковщики.
Например, набор для программирования Atmel Studio 6 Integrated Development Environment сейчас требует несколько Гигабайт места на компьютере! Чтобы скомпилировать программу в несколько сотен байт для микроконтроллера необходмо скачать “половину интернета”.
Конечно, меня это не устраивает. Я следил за новостями и опытом использования Forth для микроконтроллером. Испытываю решения в своих творческих проектах.
Система Forth - это не просто язык программирования. Это уникальный набор: интерпетатор, компилятор, отладчик и редактор, а также операционная система.
С ограниченными ресурсами микроконтроллера (ROM - 8 Кбайт, RAM - 1 Кбайт). Это полноценный крошечный компьютер. Можно “на лету” написать и отладить программу. Записать во Flash реализацию алгоритма.
Действительно - это может быть идеальным решением для Интернет-вещей IoT-Things.
Проект stm8ef для микроконтроллеров
У китайцев необходимо учиться выпуску “ширпотреба для народа”. Они используют микроконтроллеры семейства stm8. Это 8-битный микрконтроллеры, которые имеют интересные характеристики и уникальную инженерную схемную реализацию. Всё это обеспечивает надёжность и качество, низкую себестоимость конечного изделия.
Купил в интернет-магазине за 80 рублей отладочную плату на базе микроконтроллера STM8S103F3P6.
Конечно-же, сразу приступил к освоению инструмента.
Успешно собрался проект stm8ef на компьютере с OS Linux.
В репозитории хорошие описания по использованию stm8ef. Удалось на определенном входе получить значние напряжения, с использованием ADC (аналого-цифрового преобразования).
Система Forth хороший кандидат для создания различных измерителей физических величин. А с учётом, что можно купить радиомодуль Wi-Fi ESP14 (esp8266 плюс stm8s003) получиться полноценная IoT-интернет вещь.
- Бураго А. Ю., Кириллин В. А., Романовский И. В. Название: Форт — язык для микропроцессоров. //[Текст] .- Изд: Знание .- 1989 г. - стр. 36.