Petite Chez Scheme Version 9.5 Copyright 1984-2017 Cisco Systems, Inc. > (+ (/ 5 7) (/ 4 5)) 53/35 > six Exception: variable six is not bound > (define six 6) > six 6 > (- six 3) 3 > (list 3 4 5) (3 4 5) > (list 3 six 5) (3 6 5) > '(3 4 5) (3 4 5) > '(3 six 5) (3 six 5) > (3 six 5) Exception: attempt to apply non-procedure 3 > + # > (MAX 4 6 10 2) Exception: variable MAX is not bound > (max 4 6 10 2) 10 > (zero? 2) #f > (negative? -7) #t > (if 5 6 7) 6 > (define a '(2 3 4 5)) > a (2 3 4 5) > (car a) 2 > (cdr a) (3 4 5) > a (2 3 4 5) > (car (cdr a)) 3 > (cadr a) 3 > (caddr a) 4 > (cadddr a) 5 > (caddddr a) Exception: variable caddddr is not bound > (define a '(2 3 4)) > 4 4 > (caddr a) 4 > (cadddr a) 5 > a (2 3 4 5) > (set! a '(2 3 4)) > a (2 3 4) > (cadddr a) Exception in cadddr: incorrect list structure (2 3 4) > (define my-abs (lambda (n) (if (positive? n) n (- n)))) > (abs 7) 7 > (abs -3) 3 > (my-abs 7) 7 > (my-abs -3) 3 > (define times3 (lambda (n) (* n 3))) > (define times6 (lambda (n) (+ (times3 n) (times3 n)))) > (times6 7) 42 > (trace times3 times6) (times3 times6) > (times6 7) |(times6 7) | (times3 7) | 21 | (times3 7) | 21 |42 42 > (untrace) (times3 times6) > (define fact (lambda (n) (if (zero? n) 1 (* n (fact (- n 1)))))) > (fact 5) 120 > (fact 100) 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000 > (fact 200) 788657867364790503552363213932185062295135977687173263294742533244359449963403342920304284011984623904177212138919638830257642790242637105061926624952829931113462857270763317237396988943922445621451664240254033291864131227428294853277524242407573903240321257405579568660226031904170324062351700858796178922222789623703897374720000000000000000000000000000000000000000000000000 > (trace fact) (fact) > (fact 5) |(fact 5) | (fact 4) | |(fact 3) | | (fact 2) | | |(fact 1) | | | (fact 0) | | | 1 | | |1 | | 2 | |6 | 24 |120 120 > (define nth-element (lambda (ls n) (cond [(null? ls) "error"] [(zero? n) (car ls)] [else (nth-element (cdr ls) (- n 1))]))) > (nth-element '(2 5 7 8) 3) 8 >