Update DSL_AI.md

This commit is contained in:
Dmitry 2026-03-16 17:53:52 +03:00 committed by GitHub
parent 4f6c68ff35
commit c3399927c0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,28 +1,28 @@
### DSL & program language
Как будет развиваться vibe coding? Code Review (CR) глазами человека на "много букф" JS/Java etc? Точно нет.
Краткие промты (issue) vs детальные спецификации (многостраничные требования)? Один агент пишет код (Pull Request, PR), второй за ним делает CR?
Краткие промпты (issue) vs детальные спецификации (многостраничные требования)? Один агент пишет код (Pull Request, PR), второй за ним делает CR?
Может быть даже:
- первый агент ставит общую задачу проекта \ типа аван-проект (привет от ГОСТ 24.). Агент формирует общий замысел, разбивает всю систему на части, пишет бизнес-требования и т.п.
- второй детализирует требования к каждой части (ТЗ) и формирует проектное решение - как потом собрать все эти части, но уже в коде (бизнес-логики) снова в одну систему, но уже "закодированную" (исполняемую)
- третий будет solution architect (технологческий концепт, выбор технологического стека, интегации и т.п.), data architect
- третий будет solution architect (технологический концепт, выбор технологического стека, интеграции и т.п.), data architect
- четвертый формирует issue для отдельной подзадачи, пятый делае PR, шестой по нему CR, седьмой - тестер и т.д.
Только все эти этапы - это повтор классики system \ software engineering (SE\SWE), а для AI-coding нужен видимо "более свежий" концепт разработки.
### revision
Комментарий к [Архитектура вместо синтаксиса: CodeSpeak — язык разработки следующего поколения, использующий силу LLM спецификаций](https://habr.com/ru/articles/1010082/), Новый язык програмирования эпохи ИИ
Комментарий к [Архитектура вместо синтаксиса: CodeSpeak — язык разработки следующего поколения, использующий силу LLM спецификаций](https://habr.com/ru/articles/1010082/), [Новый язык программирования эпохи ИИ](https://codespeak.dev/)
Полагаю, что нужно идти параллельно двумя путями:
- DSL для каждого класса ПО
- верхнеуровнеывый JS/Java (условно) для каждого языка програмрования - возможно единая оболочка, транслирующая верхнеуровневый код в язык програмирования, как и компилятор в машинный код \ bytecode. Назовем его macro code (MC)
- верхнеуровнеывый JS/Java (условно) для каждого языка программрования - возможно единая оболочка, транслирующая верхнеуровневый код в классический язык программирования JS/Java (условно), как и компилятор в машинный код \ bytecode. Назовем его macro code (MC)
Общий вариант: человек (DSL-програмист \ DSL промпт-инженер) пишет на DSL, далее агент генерит MC-код, человек его CR и далее только человек участвует только в User testing.
Как варинт, упрощенный DSL - это связка Онтологии (на каком либо языке, например, OWL/RDF, т.е. формальная онтология) и языка запросов, например, SPARQL. Такая связка показана в проекте [Semantic BPM\VAD](https://github.com/bpmbpm/rdf-grapher/tree/main/ver9d), онтология [в частности](https://github.com/bpmbpm/rdf-grapher/tree/main/ver9d/ontology).
Общий вариант: человек (DSL-программист \ DSL промпт-инженер) пишет на DSL, далее агент генерит MC-код, человек его CR и далее только человек участвует только в User testing.
Как вариант, упрощенный DSL - это связка Онтологии (на каком либо языке, например, OWL/RDF, т.е. формальная онтология) и языка запросов, например, SPARQL. Такая связка показана в проекте [Semantic BPM\VAD](https://github.com/bpmbpm/rdf-grapher/tree/main/ver9d), онтология [в частности](https://github.com/bpmbpm/rdf-grapher/tree/main/ver9d/ontology).
Общий подход [SPARQL-driven Programming Guide](https://github.com/bpmbpm/rdf-grapher/blob/main/ver9d/requirements/sparql-driven-programming_min1.md) - лишь как демонстрация. Далее его бы развить до аналога PL\SQL, т.е. добавить процедурное расширение для получения PL\SPARQL.
PL\SPARQL - это только в части обработки данных (сама модель данных в OWL\RDF).
Блок workflow - как уже устоявшаяся практика в задачах "управления задачами" - BPMN-engine. Только конечно более совершенный, чем BPMN 2.0, но вектор верный "Программирование без програмирования": от Model-Based Design до Model Based Software Development (MBSE), где по модели генерируется весь код. BPMN 2.0 до этого еще далеко, там **no-code** только для примитивов типа [Hello Calculator](https://habr.com/ru/articles/866822/). Графическая визуализация - это основа для MC.
Блок workflow - как уже устоявшаяся практика в задачах "управления задачами" - BPMN-engine. Только конечно более совершенный, чем BPMN 2.0, но вектор верный "Программирование без программирования": от Model-Based Design до Model Based Software Development (MBSE), где по модели генерируется весь код. BPMN 2.0 до этого еще далеко, там **no-code** только для примитивов типа [Hello Calculator](https://habr.com/ru/articles/866822/). Графическая визуализация - это основа для MC.
Полагаю, что отдельным направлением будет "vibe coding по аналогии" - это когда даешь ссылку на сервис (в идеале open source) и он тебе этот сервис переделывает под твои предпочтения, например, другой стек или добавляет новые функции. Или просто далае "один в один" - для обхода блокировок.
Полагаю, что отдельным направлением будет "vibe coding по аналогии" - это когда даешь ссылку на сервис (в идеале open source) и он тебе этот сервис переделывает под твои предпочтения, например, другой стек или добавляет новые функции. Или просто далее "один в один" - для обхода блокировок.
Фактически "по кнопке" были сделаны сервисы:
- on-line сервис: https://www.ldf.fi/service/rdf-grapher см. https://github.com/bpmbpm/rdf-grapher/tree/main/ver1
- graphviz-online см. https://github.com/bpmbpm/graphviz-online/tree/main/ver1 - удивительно, в оригинальном graphviz-online не было поддержки тега image
@ -31,7 +31,7 @@ PL\SPARQL - это только в части обработки данных (
С учетом грандиозных возможностей AI реализовать "DSL для каждого класса ПО" и macro code (BPMN Next) - вопрос только постановки задачи и ... оплаченных токенов (бесплатные модели не особо хороши, точнее только в последние месяцы своей бесплатности, например, Grok Code Fast 1, kimi etc).
Фактически индустрия програмирования как когда-то при переходе с Ассемблера на С (и далее С++) должна "взять новую высоту", где уже более верхнеуровневый код будет представлять собой **конструктор смыслов** (условно RDF - триплетов, точнее их конструктор) и "писать на нем" будет простой (смертный) бизнес-пользователь, а "продвинутый бизнес-пользователь" даже сможет делать CR, проверять (условно) ключевые "BPMN Next" и PL\SPARQL конструкции.
Фактически индустрия программирования как когда-то при переходе с Ассемблера на С (и далее С++) должна "взять новую высоту", где уже более верхнеуровневый код будет представлять собой **конструктор смыслов** (условно RDF - триплетов, точнее их конструктор) и "писать на нем" будет простой (смертный) бизнес-пользователь, а "продвинутый бизнес-пользователь" даже сможет делать CR, проверять (условно) ключевые "BPMN Next" и PL\SPARQL конструкции.
Во многом подобное будет напоминать сборку ПО как пазла: ведь все компоненты: онтология \ DSL, аналоги "BPMN Next" \ "PL\SPARQL" - это могут быть достаточно агрегированные конструкции. Конечно, если нет нужного элемента для текущего пазла, то будет запрос к ИИ и тот сделает нужный блок (на JS\Java) для повторного использования в этом и других пазлах.