Demo Representing Expressions o In Scheme,we can create lists that "look like"combinations o In fact,in Scheme,expressions are lists (or primitive values) Quoting prevents evaluation of an expression Calling eval on an unevaluated expression will evaluate that value scm>‘(+12) scm>(list quotient 10 2) (+12) (quotient 10 2) scm>(eva1'(+12)) scm>(eval (list quotient 10 2)) 3 5
Representing Expressions ● In Scheme, we can create lists that “look like” combinations ○ In fact, in Scheme, expressions are lists (or primitive values) ● Quoting prevents evaluation of an expression ● Calling eval on an unevaluated expression will evaluate that value Demo scm> ‘(+ 1 2) (+ 1 2) scm> (eval ‘(+ 1 2)) 3 scm> (list 'quotient 10 2) (quotient 10 2) scm> (eval (list 'quotient 10 2)) 5
Expressions In Scheme
Expressions In Scheme