lista de filtros em listas separadas
Preciso filtrar a lista[#,d,e,#,f,g]
de modo que eu recebo a saída como[[d,e],[f,g]]
,
Estou preso ao criar uma nova lista toda vez que encontro '#', existe uma maneira de fazer isso? Eu tentei o código abaixo,
filterL([],List) :-[].
filterL([Head|Tail],X) :-
( Head \='#'->
append(X,Head,List),
filterL(Tail,List)
; filterL(Tail,X)
).