Язык когнитивного моделирования (CML) против императивного программирования против декларативного программирования
Я читаю эту статью Джона Фанге о когнитивном моделировании для компьютерных игр: http://www.qrg.northwestern.edu/resources/aigames.org/1999/fungegame99.pdf
И некоторые дальнейшие подробные чтения об этом в этом URL:
http://www.msci.memphis.edu/~classweb/public_html/comp7990/Spring2000/Wally/Presentation5/tsld014.htm
Мне трудно понять CML: я понимаю, что это какое-то сочетание императивного и декларативного программирования, я просто не понимаю, как:
Например, следующий псевдокод в императивном программировании:
Объявить новый список с именем Ex орого ItemsNames;
Элемент Foreach в элементах:
Если ItemPrice > 100, то
Добавить ItemName в Ex орогое ItemmsNames
против декларативной версии: (с использованием SQL)
ВЫБЕРИТЕ ItemName ИЗ элементов
ГДЕ ItemPrice > 100
Какой будет CML-версия этого?
И как CML помогает программисту? Я тоже этого не поняла.
Кроме того, на более подробном (как уже упоминалось ранее - имеется в виду вторую ссылку, которую я поместил) веб-сайте они также говорят об обрезке, чтобы уменьшить сложность пространства.
Хотя я знаю, что такое обрезка, я не мог понять, как она связана с CML. Они похожи на две не связанные со мной вещи в данный момент.