CS251 Jeopardy
Spring 2002
CS251 Jeopardy Spring’02 – p.1/42
CS251 Jeopardy Spring 2002 CS251 Jeopardy Spring02 p.1/42 - - PowerPoint PPT Presentation
CS251 Jeopardy Spring 2002 CS251 Jeopardy Spring02 p.1/42 Gameboard Data Naming Laziness Xforms Imperative Control Types Potpourri 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 5
CS251 Jeopardy Spring’02 – p.1/42
Data Naming Laziness Xforms Imperative Control Types Potpourri
1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5
CS251 Jeopardy Spring’02 – p.2/42
CS251 Jeopardy Spring’02 – p.3/42
CS251 Jeopardy Spring’02 – p.4/42
CS251 Jeopardy Spring’02 – p.5/42
CS251 Jeopardy Spring’02 – p.6/42
Extra: : How can the problem be fixed?
CS251 Jeopardy Spring’02 – p.7/42
CS251 Jeopardy Spring’02 – p.8/42
CS251 Jeopardy Spring’02 – p.9/42
CS251 Jeopardy Spring’02 – p.10/42
CS251 Jeopardy Spring’02 – p.11/42
CS251 Jeopardy Spring’02 – p.12/42
CS251 Jeopardy Spring’02 – p.13/42
CS251 Jeopardy Spring’02 – p.14/42
CS251 Jeopardy Spring’02 – p.15/42
CS251 Jeopardy Spring’02 – p.16/42
Extra: : What if the operand evaluation order is right-to-left?
CS251 Jeopardy Spring’02 – p.17/42
CS251 Jeopardy Spring’02 – p.18/42
CS251 Jeopardy Spring’02 – p.19/42
CS251 Jeopardy Spring’02 – p.20/42
CS251 Jeopardy Spring’02 – p.21/42
CS251 Jeopardy Spring’02 – p.22/42
CS251 Jeopardy Spring’02 – p.23/42
CS251 Jeopardy Spring’02 – p.24/42
CS251 Jeopardy Spring’02 – p.25/42
CS251 Jeopardy Spring’02 – p.26/42
(let ((f (let ((a 0)) (lambda () (begin (set! a (+ a 1)) (let ((b 0)) (lambda () (begin (set! b (+ a b)) b)))))))) (let ((p (f)) (+ (p) (let ((q (f)) (+ (q) (+ (p) (q))))))
CS251 Jeopardy Spring’02 – p.27/42
CS251 Jeopardy Spring’02 – p.28/42
CS251 Jeopardy Spring’02 – p.29/42
(handle err (lambda (y) (+ y 200)) (let ((f (lambda (x) (+ (raise err x) 1000)))) (handle err (lambda (z) (+ z 50)) (f 4)))
Extra: what if the handles are replaced by traps?
CS251 Jeopardy Spring’02 – p.30/42
(define test (lambda (x) (+ 1 (label a (+ 20 (label b (+ 300 (jump a (label c (if (> x 0) (+ 4000 (jump c x)) (jump b x)))))))))))
CS251 Jeopardy Spring’02 – p.31/42
(let ((twice (lambda (f) (lambda (x) (f (f x)))))) (let ((g (label a (lambda (z) (jump a z))))) (((g twice) 1+) 0)))
CS251 Jeopardy Spring’02 – p.32/42
CS251 Jeopardy Spring’02 – p.33/42
CS251 Jeopardy Spring’02 – p.34/42
CS251 Jeopardy Spring’02 – p.35/42
CS251 Jeopardy Spring’02 – p.36/42
Extra: What is the type of your HOFLEPT expression?
CS251 Jeopardy Spring’02 – p.37/42
CS251 Jeopardy Spring’02 – p.38/42
CS251 Jeopardy Spring’02 – p.39/42
CS251 Jeopardy Spring’02 – p.40/42
CS251 Jeopardy Spring’02 – p.41/42
CS251 Jeopardy Spring’02 – p.42/42