, , .
freq([],[]).
freq([A|L],Y) :- grab(A,Init,_), freq(L,[Init|Y]).
freq/2 - . , :
freq([],_).
freq([A|L],_) :- ..., freq(L,_).
, ? , . , [a,a], , freq/2 , .
. , :
freq(_,[]).
freq(_,Y) :- ..., freq(_,[Init|Y]).
, freq(_,[Init|Y]), . - , ? freq(_,[]). , - , . , freq(_,[Init|Y]) . , Init Y.
, :
freq([],[]).
freq([A|L],[As|Y]) :-
grab([A|L],As,K),
freq(K,Y).
:
?- freq([a,a,a,b,b,b,c,c],Ys).
Ys = [[a,a,a],[b,b],[c,c]].
, , cnt(a,3) .
freq([],[]).
freq([A|L],[cnt(A,N)|Y]) :-
grab([A|L],As,K),
length(As, N),
freq(K,Y).