% listlength1.pl: 

listlength([],0).
listlength(List,Len) :-  [_|T] = List,
                         listlength(T,TailLen),
                         Len is TailLen + 1.
