protocol
List protocol.
Paulo Moura
1.9
2012/4/25
static
(no dependencies on other files)
Appends all lists in a list of lists.
static
append(Lists,Concatenation)
append(+list(list),?list) – zero_or_one
Appends two lists.
static
append(List1,List2,List)
append(?list,?list,?list) – zero_or_more
Deletes from a list all occurrences of an element returning the list of remaining elements.
static
delete(List,Element,Remaining)
delete(@list,@term,?list) – one
Deletes all matching elements from a list, returning the list of remaining elements.
static
delete_matches(List,Element,Remaining)
delete_matches(@list,@term,?list) – one
True if the argument is an empty list.
static
empty(List)
empty(@list) – zero_or_one
Flattens a list of lists into a list.
static
flatten(List,Flatted)
flatten(+list,-list) – one
Calculates the Hamming distance between two lists (using equality to compare list elements). Fails if the two lists are not of the same length.
static
hamming_distance(List1,List2,Distance)
hamming_distance(+list,+list,-integer) – zero_or_one
Sorts a list of key-value pairs in ascending order.
static
keysort(List,Sorted)
keysort(+list,-list) – one
List last element (if it exists).
static
last(List,Last)
last(?list,?term) – zero_or_more
List length.
static
length(List,Length)
length(?list,?integer) – zero_or_more
Determines the list maximum value using standard order. Fails if the list is empty.
static
max(List,Maximum)
max(+list,-term) – zero_or_one
Element is a list member.
static
member(Element,List)
member(?term,?list) – zero_or_more
Checks if a term is a member of a list.
static
memberchk(Element,List)
memberchk(?term,?list) – zero_or_one
Determines the minimum value in a list using standard order. Fails if the list is empty.
static
min(List,Minimum)
min(+list,-term) – zero_or_one
Sorts a list in ascending order (duplicated elements are not removed).
static
msort(List,Sorted)
msort(+list,-list) – one
Sorts a list using a user-specified comparison predicate modeled on the standard compare/3 predicate (duplicated elements are not removed).
static
msort(Closure,List,Sorted)
msort(3,*,*)
msort(+callable,+list,-list) – one
X and Y are consecutive elements in List.
static
nextto(X,Y,List)
nextto(?term,?term,?list) – zero_or_more
Nth element of a list (counting from zero).
static
nth0(Nth,List,Element)
nth0(?integer,?list,?term) – zero_or_more
Nth element of a list (counting from zero).
static
nth0(Nth,List,Element,Residue)
nth0(?integer,?list,?term,?list) – zero_or_more
Nth element of a list (counting from one).
static
nth1(Nth,List,Element)
nth1(?integer,?list,?term) – zero_or_more
Nth element of a list (counting from zero).
static
nth1(Nth,List,Element,Residue)
nth1(?integer,?list,?term,?list) – zero_or_more
Partitions a list in lists with values less, equal, and greater than a given value (using standard order).
static
partition(List,Value,Less,Equal,Greater)
partition(+list,+number,-list,-list,-list) – one
The two lists are a permutation of the same list.
static
permutation(List,Permutation)
permutation(?list,?list) – zero_or_more
Prefix is a prefix of List.
static
prefix(Prefix,List)
prefix(?list,+list) – zero_or_more
Prefix is a proper prefix of List.
static
proper_prefix(Prefix,List)
proper_prefix(?list,+list) – zero_or_more
Reverses a list.
static
reverse(List,Reversed)
reverse(+list,?list) – zero_or_one
reverse(?list,+list) – zero_or_one
reverse(-list,-list) – one_or_more
The two lists have the same length.
static
same_length(List1,List2)
same_length(+list,?list) – zero_or_one
same_length(?list,+list) – zero_or_one
same_length(-list,-list) – one_or_more
The two lists have the same length.
static
same_length(List1,List2,Length)
same_length(+list,?list,?integer) – zero_or_one
same_length(?list,+list,?integer) – zero_or_one
same_length(-list,-list,-integer) – one_or_more
Selects an element from a list, returning the list of remaining elements.
static
select(Element,List,Remaining)
select(?term,?list,?list) – zero_or_more
Checks that an element can be selected from a list, returning the list of remaining elements.
static
selectchk(Element,List,Remaining)
selectchk(?term,?list,?list) – zero_or_one
Selects an element from a list, replacing it by a new element and returning the resulting list.
static
select(Old,OldList,New,NewList)
select(?term,?list,?term,?list) – zero_or_more
Checks that an element from a list can be replaced by a new element, returning the resulting list.
static
selectchk(Old,OldList,New,NewList)
selectchk(?term,?list,?term,?list) – zero_or_one
Sorts a list in ascending order (duplicated elements are removed).
static
sort(List,Sorted)
sort(+list,-list) – one
Sorts a list using a user-specified comparison predicate modeled on the standard compare/3 predicate (duplicated elements are removed).
static
sort(Closure,List,Sorted)
sort(3,*,*)
sort(+callable,+list,-list) – one
Splits a list into sublists of a given length. Also returns the remaining elements. Fails if the length is zero or negative.
static
split(List,Length,Sublists,Remaining)
split(+list,+integer,-list(list),-list) – zero_or_one
The first list is a sublist of the second.
static
sublist(Sublist,List)
sublist(?list,+list) – zero_or_more
List is an interleaving of Subsequence and Remaining. Element order is preserved.
static
subsequence(List,Subsequence,Remaining)
subsequence(?list,?list,?list) – zero_or_more
Generates subsequences of a given length from a list. Also returns the remaining elements. Element order is preserved.
static
subsequence(List,Length,Subsequence,Remaining)
subsequence(+list,+integer,?list,?list) – zero_or_more
Substitutes all occurrences of Old in List by New, returning NewList. Uses term equality for element comparison.
static
substitute(Old,List,New,NewList)
substitute(@term,@list,@term,-list) – one
Removes all elements in the second list from the first list, returning the list of remaining elements.
static
subtract(List,Elements,Remaining)
subtract(+list,+list,-list) – one
Suffix is a suffix of List.
static
suffix(Suffix,List)
suffix(?list,+list) – zero_or_more
Suffix is a proper suffix of List.
static
proper_suffix(Suffix,List)
proper_suffix(?list,+list) – zero_or_more
(none)
(none)