[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Несколько вопросов вразброс



04.07.2012 19:02, Artem Chuprina пишет:
> Артём Н. -> debian-russian@lists.debian.org  @ Tue, 03 Jul 2012 18:41:49 +0400:
> 
>  АН> Да, кстати, Пролог я не понимаю. :-(
> 
> [...]
> 
>  АН> И на практике: будь всё так хорошо, как вы пишите, все бы уже давно
>  АН> писали на Прологе (по крайней мере, знали бы что это такое). :-)
> Ну ведь ты же сам написал, что ты его не понимаешь.  Думаешь, ты один
> его не понимаешь?
Если был он был такой хороший, его бы понимали. Потому что, за это бы платили.
:-) И этому учили. C ничуть не проще, чем Пролог. Он просто имеет другую
парадигму. "Развёрнутую" на 180. У машины вывода есть свои недостатки,
ограничения и своя область применения. По какой-то совокупности причин, Пролог
не нашёл широкого применения (хотя к нему интерес то падал, то возобновлялся).

> Правильность программы относительно заданных условий будет определяться
> правильностью задания нелогических аксиом.
В смысле - "нелогических"? o.O

> Потому что правила
> рассуждений с этими законами правильны настолько, насколько правильна
> математика (если ты знаешь, что именно формулируется в теореме Геделя,
> то ты понимаешь это условие).
Думаю, что частично понимаю.
Пролог - аксиоматическая система.
И, следовательно, любая система, построенная в нём, - такая же.
Т.е., если "И" - аксиома Пролог, которая задаёт истинность А и Б, при истинности
и А, и Б, все аксиомы, заданные на её основе будут истинны в границах данной
системы.
Доказательство истинности этой аксиомы и непротиворечивости правил её
взаимодействия с остальными относятся к доказательству истинности и
непротиворечивости Булевой алгебры.
В данном случае, математика правильна априори.

Так?

> А вот как соотносится твоя модель,
> выраженная в нелогических аксиомах, с реальностью - это уже не к
> Прологу.
Но в точности тоже самое возможно сказать и о других языках.
А тесты нужны именно для того, чтобы проверить соответствие модели и реальности.
Там тоже самое, даже такие же побочные эффекты могут быть.
И программа, на нём написанная не является правильной только потому, что она
написана на Пролог. Просто тестами надо покрывать факты и правила, а не функции
и процедуры или я не прав?

> Кстати, в процессе у меня сформулировался ответ про ОО.  ОО-парадигма
> (не обязательно, кстати, выраженная на ОО-языке) - единственная пока,
> похоже, парадигма, позволяющая решать задачи, _постановка_ которых
> _начинает появляться_ ближе к завершению стадии альфа-тестирования.
> Собственно, метод решения - ты выделяешь в предметной области сущности,
> заводишь по типу на каждую, и добавляешь поведение по мере прояснения
> задачи.
> 
> Если задача поставлена лучше, то обычно и парадигму можно найти получше.
Хм... Может. Но не только для этого случая применимо же..?
Т.е., вы хотите сказать, что ООП - это для "снизу-вверх"?
А для наоборот и сама по себе, разве концепция плоха? :-)


Reply to: