Здравствуйте, D. Mon, Вы писали:
DM>Следует помнить, что подход этот оправдан, когда есть множество похожих задач из одной области. Ведь вместо прямого решения задачи предлагается делать универсальный решатель задач подобного рода.
Дело в том что практически любое приложение состоит из кучи таких задач.
DM>Его сделать сложнее
Да я бы не сказал.
DM>(и дело отнюдь не в парсинге),
Еще в типизации и кодогенерации.
И то и другое можно сделать очень простым.
Так что сложность будет не больше чем при написании библиотеки.
А чаше даже меньше. Ибо не придется ломать голову над тем как нужную модель вычислений запихнуть в конкретный язык таким образом, чтобы не получить говнокод.
Скажу по секрету: обычно это не получается. И максимум что народу удается, это сделать так чтобы от кода откровенно не тошнило.
В случае с ДСЛ мы можем с чистой совестью генерировать говнокод. Всё равно его никто ни читать, ни тем более править не будет. Все что требуется от генерируемого кода это чтобы он правильно и быстро работал.
DM>поэтому чтобы это дело окупилось, нужно решать им не одну задачу, а серию. Если же задача штучная, то смысла в таком подходе не видно, тут языки общего назначения и пригодятся. Так что совсем уж их объявлять бессмысленными не стоит.
Только если вычислительная модель задачи совпадает с вычислительной моделью языка. Если же это не происходит, то начинаются проблемы.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>