fig7_4.pl
来自「超多的prolog源代码 具体内容见压缩包里面的programs.txt」· PL 代码 · 共 16 行
PL
16 行
% Figure 7.4 An implementation of the findall relation.
findall( X, Goal, Xlist) :-
call( Goal), % Find a solution
assertz( queue(X) ), % Assert it
fail; % Try to find more solutions
assertz( queue(bottom) ), % Mark end of solutions
collect( Xlist). % Collect the solutions
collect( L) :-
retract( queue(X) ), !, % Retract next solution
( X == bottom, !, L = [] % End of solutions?
;
L = [X | Rest], collect( Rest) ). % Otherwise collect the rest
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?