EOH>>А вот свои DSL за исключением редких случаев лучше, ИМХО, не писать.
VD>А вот это утверждение неверно. И убедительных обоснований к нему не приведено. Да и как их привести то к ошибочной позиции?
Были бы убедительные доказательства — вопрос бы не стоял. Могу сказать, что по результатам данной дискуссии я будут думать и, возможно, несколько пересмотрю свои позиции.
VD>Свои ДСЛ-и писать можно и нужно. Но как и любой другой код это должно быть: а) действительно необходимо (т.е. давать ощутимые преимущества), б) ДСЛ должен быть тщательно спроектирован и продуман, в) ДСЛ должен быть качественно реализован на подходящих для этого средствах.
а) Программист среднего уровня не сможет понять, когда это
действительно необходмо. А на рынке, увы, проще нанять среднего уровня, нежели высокого. Поэтому я стараюсь просто так в руки DSL никому не давать ^_^.
б) Увы, мало кто может тщательно продумать и спроектировать DSL. На мой взгляд, плохо спроектированный DSL страшнее плохо спроектированного кода
.
в) Ну и про качественную реализацию я молчу.
VD>То что твое опыт негативный никак не может влиять на сам подход. Просто вы нарушали одно (или несколько) из приведенных выше условий.
Конечно. Я же не могу позволить себе нанимать только высококлассных программистов
.
VD>Вообще одно то, что вы пишите ГУЙ на С++ уже говорит о том, что средства разработки под задачи вы подбираете, мягко говоря, не очень хорошо. Плюс применимы только в одном случае — когда нужно выжимать из процессора последние биты. Для гуя есть масса куда более подходящих средств.
Увы, у меня нет своей компании чтобы единолично выбирать технологии и решения с нуля. Я работаю за деньги с тем, что дадут