Обсуждение

В архиве: 18 комментариев.

Читать и комментировать в ЖЖ ↗

p2004r · 9 мая 2023

Комментарий

Так вроде давно решили где оптимум архитектуры. Это оформление системы как (при необходимости даже) стека (e)DSL. Ну а сам (e)DSL выбирается в идеале как поддающийся "суперкомпиляции" (тождественным преобразованиям структуры в пользу того или иного оптимума реализации). Как только "базовые слова" (e)DSL вступают в комбинаторные отношения, тут и начинается "победа над сложностью". А пока "языка нет", получается "деревянный конструктор с кубиками прибитыми к потолку".

Анатолий Левенчук · 9 мая 2023

Комментарий

Это если читать текст софтверщику. А если читает железячник или организатор — что там eDSL? А если это архитектура зоопарка софта на крупном предприятии — на уровне целых приложений, то там как? В этом-то и дело, что надо уметь рассуждать одинаково о самых разных архитектурах. Это особый предмет. И когда говоришь о масштабируемости, eDSL не помогает, равно как и когда говоришь о надёжности. А это архитектурные характеристики, и не только софта.

Ответ на комментарий

p2004r · 9 мая 2023

Комментарий

Ну почему нет? Вот у механиков — совершенно конкретный "DSL" из которого они и собирают свои механизмы "на кинетическом уровне". Так же и у кучи других "достаточно зрелых". Например железячник рисует в каком грасхопере свою железку параметрически.

А то что "организаторы" ничего себе не придумали (или скорее "не договорились"), так это совсем другое. В случае DSL речь даже не о масштабируемости на уровне самого DSL, а "о стекировании DSL". DSL оперирующий понятиями нижележащего DSL (даже нескольких). На неком "достаточно высоком уровне" все может вполне свестись к одним и тем же "паттернам описания" (как у тех же "механиков").

PS

Тот же софт может вполне себе исходя из описания среды на уровне теории категории генерировать решения оптимально сохраняющие степени свободы системы при выполнении любых конкретных требований к конфигурации. Причем исходя из описаний продуктов.

Ответ на комментарий