Salve,
ho un problema con il seguente codice
codice:
create_semantic_graph(SemanticGraph):-
see('semantic_graph.bk'),
EdgesList = [],
read(A),
create_edges_list(A, EdgesList),
nl,nl,write(EdgesList),
seen
.
create_edges_list(end_of_file, _) :- !.
create_edges_list(A, EL):-
read(A1),
write([A|EL],nl,
create_edges_list(A1,[A|EL])
.
In pratica vorrei leggere delle linee dal file semantic_graph.bk e inserirle in una lista.
Il problema è nella variabile EdgesList: quando faccio il write(Edgeslist) in create_semantic_graph , mi stampa una lista vuota.
Durante il procedimento, la lista è costruita bene, e lo vedo tramite il write([A|EL]) all'interno di create_edges_list
E' come se la funzione create_edges_list non riesca a mandare in output EL.
E' la prima volta che scrivo in Prolog, quindi non ci capisco granchè.
Il compilatore è Sicstus Prolog.
Dove sbaglio?
Grazie.