"6.1 Equivalence predicates" "procedure: (eqv? obj1 obj2)" #t #f #t #t #t #f #f #f "eqv? on procedures" #t #t #t #f #f "eqv? on procedures" #t #f "eqv? on procedures" #t #f #f #f #f #f #f #t "procedure: (eq? obj1 obj2)" #t #f #f #f #t #t #t #t "eq? on car procedures" #t #t #t #t "eq? on procedures" #t "library procedure: (equal? obj1 obj2)" #t #t #t #t #t #t #f "6.2.5 Numerical operations" "procedure: (number? obj)" "procedure: (complex? obj)" #t #t "procedure: (real? obj)" #t #t #t "procedure: (rational? obj)" #t #t "procedure: (integer? obj)" #t #t #t "library procedure: (max x1 x2 ...)" 4 4.0 "procedure: (+ z1 ...)" "procedure: (* z1 ...)" 7 3 0 4 1 "procedure: (- z1 z2)" "procedure: (- z)" "optional procedure: (- z1 z2 ...)" "procedure: (/ z1 z2)" "procedure: (/ z)" "optional procedure: (/ z1 z2 ...)" -1 -6 -3 3/20 1/3 "library procedure: (abs x)" 7 "procedure: (quotient n1 n2)" "procedure: (remainder n1 n2)" "procedure: (modulo n1 n2)" 1 1 3 -1 -3 1 -1 -1 -1.0 "library procedure: (gcd n1 ...)" "library procedure: (lcm n1 ...)" 4 0 288 288 1 "procedure: (numerator q)" "procedure: (denominator q)" 3 2 2.0 "procedure: (floor x)" "procedure: (ceiling x)" "procedure: (truncate x)" "procedure: (round x)" -5.0 -4.0 -4.0 -4.0 3.0 4.0 3.0 4.0 4 7 "library procedure: (rationalize x y)" 1/3 0.3333333333333333 "6.2.6 Numerical input and output" "procedure: (string->number string radix)" 100 256 100.0 1500.0 "6.3.1 Booleans" #t #f #f "library procedure: (not obj)" #f #f #f #t #f #f #f "library procedure: (boolean? obj)" #t #f #f "6.3.2 Pairs and lists" (a b c d e) (a b c d e) (a b c . d) (a b c . d) (a b c) #t (a . 4) #t (a . 4) #f #f "procedure: (pair? obj)" #t #t #f #f "procedure: (cons obj1 obj2)" (a) ((a) b c d) ("a" b c) (a . 3) ((a b) . c) "procedure: (car pair)" a (a) 1 "error" "procedure: (cdr pair)" (b c d) 2 "error" "procedure: (set-car! pair obj)" (not-a-constant-list) (3) "library procedure: (list? obj)" #t #t #f #f "library procedure: (list obj ...)" (a 7 c) () "library procedure: (length list)" 3 3 0 "library procedure: (append list ...)" (x y) (a b c d) (a (b) (c)) (a b c . d) a "library procedure: (reverse list)" (c b a) ((e (f)) d (b c) a) "library procedure: (list-ref list k)" c c "library procedure: (memq obj list)" "library procedure: (memv obj list)" "library procedure: (member obj list)" (a b c) (b c) #f #f ((a) c) (101 102) (101 102) "library procedure: (assq obj alist)" "library procedure: (assv obj alist)" "library procedure: (assoc obj alist)" (a 1) (b 2) #f #f ((a)) (5 7) (5 7) "6.3.3 Symbols" "procedure: (symbol? obj)" #t #t #f #t #f #f "procedure: (symbol->string symbol)" "flying-fish" "martin" "Malvina" "procedure: (string->symbol string)" #t mISSISSIppi #f #t #t "6.3.4 Characters" #\a #\A #\( #\space #\space #\newline "procedure: (string-set! string k char)" "***" "?**" immutable "6.3.6 Vectors" #(0 (2 2 2 2) "Anna") "library procedure: (vector obj ...)" #(a b c) "procedure: (vector-ref vector k)" 8 13 "procedure: (vector-set! vector k obj)" #(0 ("Sue" "Sue") "Anna") #(0 "doe" 2) "library procedure: (vector->list vector)" "library procedure: (list->vector list)" (dah dah didah) #(dididit dah) "6.4 Control features" "procedure: (procedure? obj)" #t #f #t #f #t "procedure: (apply proc arg1 ... args)" 7 30 "library procedure: (map proc list1 list2 ...)" (b e h) (1 4 27 256 3125) (5 7 9) (1 2) "library procedure: (for-each proc list1 list2 ...)" #(0 1 4 9 16) "library procedure: (force promise)" 3 (3 3) 2 # 6 # 6 "procedure: (call-with-current-continuation proc)" -3 4 #f "procedure: (call-with-values producer consumer)" 5 -1 "procedure: (dynamic-wind before thunk after)" (connect talk1 disconnect connect talk2 disconnect) "6.5 Eval" "procedure: (eval expression environment-specifier)" "omit" "omit"