Node:SRFI-1 Predicates, Next:, Previous:SRFI-1 Constructors, Up:SRFI-1



39.3.2 Predicates

The procedures in this section test specific properties of lists.

proper-list? obj Scheme Procedure
Return #t if obj is a proper list, that is a finite list, terminated with the empty list. Otherwise, return #f.

circular-list? obj Scheme Procedure
Return #t if obj is a circular list, otherwise return #f.

dotted-list? obj Scheme Procedure
Return #t if obj is a dotted list, return #f otherwise. A dotted list is a finite list which is not terminated by the empty list, but some other value.

null-list? lst Scheme Procedure
Return #t if lst is the empty list (), #f otherwise. If something else than a proper or circular list is passed as lst, an error is signalled. This procedure is recommended for checking for the end of a list in contexts where dotted lists are not allowed.

not-pair? obj Scheme Procedure
Return #t is obj is not a pair, #f otherwise. This is shorthand notation (not (pair? obj)) and is supposed to be used for end-of-list checking in contexts where dotted lists are allowed.

list= elt= list1 ... Scheme Procedure
Return #t if all argument lists are equal, #f otherwise. List equality is determined by testing whether all lists have the same length and the corresponding elements are equal in the sense of the equality predicate elt=. If no or only one list is given, #t is returned.