Считывания строк с файла в Прологе

Как считать с файла все строки? По заданию нужно реализовать подсчет слов в каждой строке и вывести в формате: строка N содержит М слов. Как это можно сделать? Есть наработка, как ее улучшить и почему она всегда выводит false?

   main :-
    open('in.txt', read, Str),
    read_file(Str,Lines),
    close(Str),
    write(lenght(Lines)),
    word_count(Lines).
 
read_file(Stream,[]) :-
    at_end_of_stream(Stream).
 
read_file(Stream,[X|L]) :-
    \+ at_end_of_stream(Stream),
    read(Stream,X),
    read_file(Stream,L).
 
word_count(C):- Lines(LS),
    count(LS, C), true.
count([], 0).
count([L|LS], C) :- split_string(L, " ", "", W),
    length(W, N1), write(lenght(W,N1)), count(LS, N2), C is N1 + N2, true.

Есть такая наработка, но почему то word_count не работает, в чем причина?


Ответы (0 шт):