Salve,
ho un problema con il seguente codice
In pratica vorrei leggere delle linee dal file semantic_graph.bk e inserirle in una lista.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]) .
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.

Rispondi quotando