このディレクトリの索引

データを追加する度に整列する(L) :-
        get_line(Line),
        データを追加する度に整列する(Line,[],L).

データを追加する度に整列する(end_of_file,_,_) :- !,fail.
データを追加する度に整列する(Line,L1,L) :-
        データを挿入する(Line,L1,L).
データを追加する度に整列する(Line,L1,L) :-
        データを挿入する(Line,L1,L2),
        get_line(Line2),
        データを追加する度に整列する(Line2,L2,L).

データを挿入する(A,[],[A]) :- !.
データを挿入する(A,[B|R],[A,B|R]) :- A @=< B,!.
データを挿入する(A,[B|R1],[B|R2]) :- A @> B,データを挿入する(A,R1,R2),!.