This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/Logtalk/library/varlist.lgt

47 lines
622 B
Plaintext
Raw Normal View History

:- object(varlist,
extends(list)).
:- info([
version is 1.0,
author is 'Paulo Moura',
date is 2000/7/24,
comment is 'List of variables predicates.']).
member(Element, [Head| _]) :-
Element == Head.
member(Element, [_| Tail]) :-
member(Element, Tail).
memberchk(Element, [Head| Tail]) :-
Element == Head ->
true
;
memberchk(Element, Tail).
prefix([], _).
prefix([Head1| Tail1], [Head2| Tail2]) :-
Head1 == Head2,
prefix(Tail1, Tail2).
valid(List) :-
nonvar(List),
\+ \+ valid2(List).
valid2([]).
valid2([Head| Tail]) :-
var(Head),
valid2(Tail).
:- end_object.