Search

( append [ list? list ] ... ) list? ( append [ list? list ] ... obj ) *
Returns a list consisting of the elements of the first list followed by the elements of the other list s. If there are no arguments, the empty list is returned. If there is exactly one argument, it is returned. Otherwise the resulting list is always newly allocated, except that it shares structure with the last argument. An improper list results if the last argument is not a proper list.
( assoc obj [ list? alist ] ) ( or pair? #f ) ( assoc obj [ list? alist ] [ procedure? = ] ) ( or pair? #f )
= ( λ a b ) *
assq, assv, assoc It is an error if alist (for "association list") is not a list of pairs. These procedures find the first pair in alist whose car field is obj , and returns that pair. If no pair in alist has obj as its car, then #f (not the empty list) is returned. The assq procedure uses eq? to compare obj with the car fields of the pairs in alist , while assv uses eqv? and assoc uses compare if given and equal? otherwise. Rationale: Although they are often used as predicates, memq, memv, member, assq, assv, and assoc do not have question marks in their names because they return potentially useful values rather than just #t or #f.
( assq obj [ list? alist ] ) ( or pair? #f )
assq, assv, assoc It is an error if alist (for "association list") is not a list of pairs. These procedures find the first pair in alist whose car field is obj , and returns that pair. If no pair in alist has obj as its car, then #f (not the empty list) is returned. The assq procedure uses eq? to compare obj with the car fields of the pairs in alist , while assv uses eqv? and assoc uses compare if given and equal? otherwise. Rationale: Although they are often used as predicates, memq, memv, member, assq, assv, and assoc do not have question marks in their names because they return potentially useful values rather than just #t or #f.
( assv obj [ list? alist ] ) ( or pair? #f )
assq, assv, assoc It is an error if alist (for "association list") is not a list of pairs. These procedures find the first pair in alist whose car field is obj , and returns that pair. If no pair in alist has obj as its car, then #f (not the empty list) is returned. The assq procedure uses eq? to compare obj with the car fields of the pairs in alist , while assv uses eqv? and assoc uses compare if given and equal? otherwise. Rationale: Although they are often used as predicates, memq, memv, member, assq, assv, and assoc do not have question marks in their names because they return potentially useful values rather than just #t or #f.
( caaaar [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caaadr [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caaar [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caadar [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caaddr [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caadr [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caar [ pair? pair ] ) *
caar, cadr, cdar, cddr These procedures are compositions of car and cdr
( cadaar [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( cadadr [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( cadar [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caddar [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( cadddr [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( caddr [ pair? pair ] ) *
The (scheme cxr) library exports twenty-four procedures which are the compositions of from three to four car and cdr operations. For example caddar could be defined by (define caddar (lambda (x) (car (cdr (cdr (car x)))))).
( cadr [ pair? pair ] ) *
caar, cadr, cdar, cddr These procedures are compositions of car and cdr
( car [ pair? pair ] ) *
Returns the contents of the car field of pair . Note that it is an error to take the car of the empty list.