Я хочу отфильтровать этот список List=['F1',a1,a2,' LF2',a1,a2]
с предикатом is_upper/2 и maplist/3 ниже
is_upper(Elem,Res)
: если Elem
является атомом в верхнем регистре, он будет назначен Res, тогда я хотел бы поместить все атомы в верхнем регистре в список List_Upper
я пробую это;
?- maplist(is_upper,List,List_upper).
List_Upper = ['F1',_A,_B,'F2',_C,_D,'F3',_E,_F] ? ;
как я могу отфильтровать случайные ауты _A,_B...
ожидаемый результат:
List_Upper = ['F1','F2','F3']
С уважением
include/3
,exclude/3
иpartition/5
. - person mat   schedule 21.01.2016exclude(is_upper,List,List,upper).
- person Ans Piter   schedule 21.01.2016SWI
гораздо проще обращаться, чем сSICS
, но у некоторых из них есть свои преимущества;SICS
намного быстрее, но жадно сmemory
, тогда какSWI
менее быстро, хотя и скупо сmemory
. Не могли бы вы посоветовать мне, какойprolog tools
я использовал на первом этапе изученияProlog
? С уважением - person Ans Piter   schedule 21.01.2016make/0
, графический трассировщик и много автозагрузки. Все эти функции хороши для небольших программ и хороши для начинающих, но они имеют тенденцию неожиданно ломаться в более серьезных сценариях. Я рекомендую вам начать с SWI-Prolog, а затем купить SICStus для серьезной работы. - person mat   schedule 21.01.2016SWI
) имеет дизайн интерфейса, такой какSICS(TCL)
? и где лучший и простой способ сделать это, какjava(swing)
? какой-то туто-сайт - person Ans Piter   schedule 21.01.2016XPCE
, но в настоящее время вы обычно выбираете веб-маршрут и используетеlibrary(pengines)
SWI и мощные веб-библиотеки. - person mat   schedule 21.01.2016