Evaluation Order and Infinite Lists - slide 7 : 27 |

Infinite evaluations and error evaluations - clarification

What is the value of the following expressions?

((lambda (x) 1)some-infinite-calculation) ((lambda (x) 1)(/ 5 0))

- Different evaluation orders give different 'results'
- The number 1
- A non-terminating calculation/an erroneous calculation

- Two different semantics of function application are involved:
**Strict**: A function call is well-defined if and only if all actual parameters are well-defined**Non-strict**: A function call can be well-defined even if one or more actual parameters cause an error or enters an infinite calculation

Scheme is strict