Пролог: фильтрация списка?
В настоящее время я работаю над очень коротким проектом на Прологе, и просто застрял, пытаясь применить созданный мной «фильтр» к списку. У меня есть то, что вы могли бы назвать фильтром готовым, но я не могу его применить. Было бы лучше, если бы я проиллюстрировал:
filter(A, B)
... выводит true, если соблюдены определенные условия.
filterList(A, [X, Y, Z])
... выводит список, который включает все элементы из второго аргумента, которые делают вывод фильтраложный, (Таким образом, если фильтр (A, X) равен true, вывод будет [Y, Z]).
У меня есть готовая функция «фильтра», но теперь мне нужно применить ее к списку, как показано во втором примере, за исключением всех элементов, для которых фильтр возвращает true при применении с первым аргументом.
Таким образом, если фильтр является простым A == B, функция должна получать A [A, B, A, C, D, A] и выводить [B, C, D], удалив все элементы, для которых фильтр применяется, очевидно.
У меня возникли проблемы с базовой структурой функции, поэтому, если кто-нибудь сможет предоставить базовую схему для такой функции, это будет очень полезно. Я максимально упростил свою ситуацию, чтобы я мог взять все, что вы сможете предоставить, и изменить его для моих нужд.
Заранее спасибо!