;; slide no. 12 (car '(a b c)) ; a (car '((a) b (c d))) ; (a) (cdr '(a b c)) ; (b c) (cdr '((a) b (c d))) ; (b (c d)) ;; slide no. 13 (car (cdr (cdr '((a) b (c d))))) ; (c d) (caddr '((a) b (c d))) ; (c d) (cons 'a ()) ; (a) (cons 'd '(e)) ; (d e) (cons '(a b) '(c d)) ; ((a b) c d) (cons '(a b c) '((a) b)) ; ((a b c) (a) b) ;; slide no. 20 - Typos on slide - should be 42 not just 2 in results. (list 1 42 #t #f ()) ; (1 42 #t () ()) (list '1 '42 '#t '#f '()) ; (1 42 #t () ()) ;; slide no. 30 ;; sum 1 + 2 + ... + n (define (sum-n n) (cond ((zero? n) 0) (else (+ n (sum-n (- n 1)))) ) ) ;; slide no. 31 ;;length of a list (define (my_length x) (cond ((null? x) 0) (else (+ 1 (my_length (cdr x)))) ) ) ;; slide no. 33 ;; absolute values of elements in list (superficial level) (define (abs-list x) (cond ((null? x) ()) (else (cons (abs (car x)) (abs-list (cdr x)))) ) ) ;; slide no. 34 ;; appends two lists (define (my_append x y) (cond ((null? x) y) (else (cons (car x) (my_append (cdr x) y))) ) )