diff options
author | Peter Mikkelsen <peter@pmikkelsen.com> | 2021-06-30 23:53:19 +0000 |
---|---|---|
committer | Peter Mikkelsen <peter@pmikkelsen.com> | 2021-06-30 23:53:19 +0000 |
commit | 1ca3670047172610f0c284df5d5171fa840f97ce (patch) | |
tree | 0be53ff4d0c8d970dab9f6a8c8693db56eaff9c0 | |
parent | d5ac41480097d6f382fbb2385974e57ec21030a4 (diff) |
Add length/2 and member/2
-rw-r--r-- | example.pl | 3 | ||||
-rw-r--r-- | stdlib.pl | 11 |
2 files changed, 11 insertions, 3 deletions
@@ -24,6 +24,3 @@ tester(A, B) :- true. =(A,A). -length([], zero). -length([Head|Tail], suc(Length)) :- - length(Tail, Length). @@ -55,3 +55,14 @@ A @>= B :- A == B. A @>= B :- A @> B. + +% List predicates + +length([], 0). +length([_|Tail], Length) :- + length(Tail, Length0), + Length is Length + 1. + +member(X, [X|_]). +member(X, [_|Tail]) :- + member(X, Tail). |