gopher2.pl

loading
details
attribute value
description
owner Johannes Waldmann
uploaded 2017-08-17 03:45:17.0
disk size 500 Bytes
downloadable true
type
attribute value
name no_type
processor id 1
description this is the default benchmark type for rejected benchmarks and benchmarks that are not associated with a type.
owning community none
loading contents
% Adapted from LP/SGST06/gopher.pl
% terminating

%query: gopher(i,o).
gopher(nil,nil).
gopher(X,cons(nil,T)) :- no(empty(X)), head(X,nil), tail(X,T).
gopher(X,Y) :- no(empty(X)),
               head(X,H),
               no(empty(H)),
               head(H,U),
               tail(H,V),
               tail(X,W),
               gopher(cons(U,cons(V,W)),Y).

head([],_).
head([X|_],X).

tail([],[]).
tail([_|X],X).

empty([]).

no(X) :- X, !, failure(a).
no(_).

failure(b).
popout

content may be truncated. 'popout' for larger text window.

actions get anonymous link download benchmark