"На четвертый день Соколиный Глаз заметил, что у сарая нет задней стенки".
Это, ведь мое собственное:
Цитата:
В начале 2000-х столкнулся с проблемой. Создав свою Internet-страницу, понял, что, кроме текстов и картинок, хочу выкладывать и некоторые алгоритмы и программы. Правилами бесплатного хостинга обычно запрещается выкладывать исполняемые файлы и архивы. Значит, готовые к употреблению win-exe-файлы выложить не удастся.
Перешел к созданию CGI-файлов. Неудобно - играть с моими программками можно только в режиме online, тратя свой Internet-трафик. Плюс, правила выкладывания CGI-программ на бесплатных хостингах имеют свойство "плавать", что приводит к необходимости постоянно отслеживать их работоспособность и, даже, иногда переписывать их с языка на язык.
Гнаться за новыми версиями Internet-browser-ов, используя все возможности Java-script, Flash и прочих встроенных Basic-ов? Это значит а) ограничивать свою аудиторию только "продвинутыми" пользователями и б) погрузиться в изучение этих убогих языков.
***
Решил следующее. Написать минимальное FORTH-ядро и откомпилировать его в win-exe. Остальную часть FORTH-системы оформить в виде обычного текстового файла. Exe-ядро превратить в текстовый файл (содержащий текстовое представление бинарных кодов), из которого можно собрать исполняемый при помощи простейшего DOS-овского debug. Выложить оба текстовых файла (плюс файл с исходным текстом ядра на языке ассемблера) в Сеть.
Плюс такого подхода очевиден - полная свобода просмотра и редактирования кода пользователем. Дополнительно, доведя до ума свой FORTH, я смогу больше не мучиться с выбором: быстренько слепить что-то в Borland или MS Studio, или лучше - на Perl под Tcl/Tk?
Минус тоже вполне очевиден. Я заведомо ограничил себя Win-32. Сначала хотел переписать и под Linux. Но, там проблема стоит не столь остро - исходные тексты на C, Perl и Tcl/Tk понимаются всеми nix-ами однозначно. Да и способов создать проблемно-ориентированный язык там пруд-пруди.