Я пытался проанализировать файл, содержащий строки целых чисел, используя phrase_from_file
с правилами грамматики
line --> I,line,{integer(I)}.
line --> ['\n'].
таким образом: phrase_from_file(line,'input.txt').
Это не удалось, и я очень быстро заблудился, пытаясь отследить его.
Я даже пытался напечатать I
, но это даже не дошло.
EDIT ::
Поскольку ни одно из приведенных ниже решений не соответствует моим потребностям (использование read/1
предполагает, что вы читаете термины, а иногда пишете, что DCG может просто занять слишком много времени), я каннибализировал этот код, который я погуглил, основные изменения будучи добавлением:
read_rest(-1,[]):-!.
read_word(C,[],C) :- ( C=32 ;
C=(-1)
) , !.