Да, спасибо, сайт интересный. И вызывает некоторые практические вопросы:
1. Вполне согласен с п. Каковы пути выхода из кризиса? в упомянутой статье Бурьяка (на странице
http://compact-programming.narod.ru/CP0031.htm). И вот можно ли сделать среду поддержки таких моделей? В теории, полагаю можно основываться на том, что обсуждалось в
этой статье (даю выдержку для тех, кому лень регаться для загрузки вложений с того движка).
Вложение:
А логику построения уже давали, например, в п. 1.7
этой книги (дал бы выдержку, но дежавюшки не поддерживаются). Общая идея приводит примерно к тому же, что у Бурьяка здесь... и в Pure Builder.
Возможные варианты реализации представляются такими (множество м.б. неполно):
* приложение отдельной ОС, работающее по такому принципу: http://sem-tech.net/forum/russian.aspx? ... 91#post691 (думаю, Бурьяк примерно то же имеет в виду, так ведь?);
* самостоятельная операционная среда, рационализированная (допустим, по типу Оберон-ОС, примерно как Бурьяк и предлагает), поддерживающая приложения, исполняемые прямо или предварительно компилируемые из исходных текстов.
Получается, что функции редактора - вести и исполнять описания технологий, где исполнителями одних техопераций являются пользователи (в т.ч. когда они управляют машинами по указаниям в описаниях), других - машины, принимающие команды из описаний напрямую (как программируемые, так и чисто "железные" - главное, чтоб каналы связи с машиной, исполняющей редактор, были). Разумеется, у всех техопераций есть предмет труда - какие-то массивы данных. Вместе с описаниями технологий они образуют контент, с которым работаем в среде.
Оболочка редактирования (фактически - операционная среда АРМ) может увязываться с СУБД контента по тому же принципу, как Прохоренко предлагает:
https://sites.google.com/site/purebuilder/#TOC-PureBuilder1. При этом употребляются открытые обменные форматы документов для сохранения в файлы, как-то:
* научного текста полиграфического качества (TeX, LaTeX);
* открытого документного стандарта (например, составного документа OpenOffice, XML);
* стандарта межмашинного переноса (например, PDF, HTML).
В конкретной реализации редактора выбирается подмножество вариантов обмена. И соответственно круг приложений, работающих с БД. Внешних - сам редактор не делает контент (ну если только он оригинальный), а лишь организует его в модели решаемых задач. И в основном готовых - т.е. по возможности подбираются существующие приложения для работы с различными видами контента, и только пишется код поддержки управления ими из редактора (и обмена их с БД, если надо).
Функции среды дополнительно - компиляция с ожидаемых языков исходного текста приложений, исполнение, операции взаимодействия (файлы/порты), а также языки технологической алгоритмизации процессов. Причём они же используются как "языки управления заданиями" ОС, т.е. нет разницы в средствах сценаризации исполнения приложений и работы пользователей. И разработка/сопровождение ОС ведётся в ней же (для чего она пишется на "ожидаемом языке", например, на КомПасе). Аналогично в случае редактора - ОС внешняя, а все процессы ЖЦ редактора по его готовности в приемлемой версии переводятся в его же инсталляцию.
2. Может ли какая-то из сред, служащих предметом этого форума (XDev, ББ...), как полагаете:
* быть использована для разработки такого редактора/операционки (на начальном этапе, а впоследствии - только как подчинённое приложение для компиляции с реализуемого языка) И/ИЛИ;
* быть развита в такой редактор/операционку (соответственно уже с интегрированной компиляцией)?
Уточню ещё вот что:
* понятие алгоритма использую в таком значении, как обсуждал прежде всего здесь: http://forum.oberoncore.ru/viewtopic.php?p=83926#p83926. Т.е. разница с программой в модели исполнителя (говорили также здесь, например, и здесь);
* языки техноалгоритмизации - это не обязательно на схемной основе, обсуждаемой в статье. Форма записи м.б. и чисто текстовой, и на базе таблиц. Главное - что она воспроизводит одну и ту же структуру модели деятельности (как технологии, составляемой из техопераций, в т.ч. и динамически в зависимости от распознавания текущего состояния среды исполнения как одного из предусмотренных при описании деятельности).
Вообще условия применимости разных записей - самостоятельная тема. Её тоже можно было бы обсудить отдельно, но не знаю, насколько будет интересно участникам (мне лично их конструктивные мнения знать однозначно интересно)...