Здравствуйте, DarkGray, Вы писали:
DG>>>На вскидку, для языков прикладного уровня я вижу два глобальных направление:
П>>(скип)
П>>Не знаю почему, но мне это очень сильно напомнило пролог.
DG>Да, именно что-то такое и хочется, только хочется не в виде теоретической разработки, а в виде языка прикладного уровня.
К сожалению у пролога и (аналогичных идей — логические языки) есть один, но очень большой минус — эти идеи не осуществимы даже теоретически

. Почти все что есть в нашей работе интересного требует для формализации логики предикатов первого порядка (например нам очень интересна арифметика), а задача доказательства в этом исчислении неразрешима (мат. теорема). Ксати есть есть один, всем известный, логический язык "прикладного уровня" — SQL и те кто на нем пытался хоть что-то сделать (речь, конечно, не о тривиальном запросе) очень быстро упираются в необходимость использовать императивные вставки типа PL/SQL, или получив результат запроса доработать его на на другом языке.
Можно конечно ждать озарений от теоретиков, которые найдут разрешимое исчисление, достаточное в большинстве прикладных задач, но... на сколько мне известно очень давно не было заметных подвижек в этом направлении
DG>У пролога есть один большой и жирный минус — он не подразумевает диалог с программистом.
Я в свое время имел дело с "автоматическими" системами построения доказательств, они, в силу неразрешимости всего интересного, работают в диалоговом режиме, но что это за диалог! Для того что бы добиться от нее даже тривиального результата, надо очень долго искать путь как твою мысль формализовать, что бы "подтолкнуть" эту систему. В частности это выливается в то что надо очень хорошо понимать доказательство и принципы работы "автоматической" части. По сути единственная польза от них в том что если ничего не получается то скорее всего пытаешься доказать неверное утверждение

И то, обычно выясняется, что нужное утверждение верно, просто оно неправильно сформулировано...
Мое мнение, что диалог это конечно здорово, но компы пока слишком медленные, что бы с ними разговаривать не как с идиотом
DG>т.е. если задача неподъемная, то комп не говорит — у меня здесь проблема, мне нужно подумать пару лет и т.д.
DG>также прологу нельзя сказать — ну, реши хоть как-нибудь, давай вот в этом месте мы "схитрим" и т.д.
А вот тут, на сколько я понимаю, есть место для прорыва. Если человек готов пожертвовать качеством ответа (в частности его верностью

) то все становится быстрее и даже невозможное становится возможным. К сожалению эта математика мне почти неизвестна. Тривиальный пример — верность утверждения выясняется за время O(1) если вероятность ошибки 50% приелима