Homework #25


This problem requires Lecture 23 and book section 3.8.

Exercise 3.58, p.118 - (30 minutes)
Add let to the call-by-need interpreter. Use a test program that demonstrates that this let is lazy.

If you use lazy evaluation for procedures, can't you use it for let expressions or other times you bind variables?

Try testing your results using expressions like this

    let x = 3
      in +(x,1)

and

    let x = +(z,1)
      in 
Notice: Uninitialized string offset: 1 in /users/home2/ta/cs330ta/public_html/cs330/inc/codeformat.php on line 115
3

Why should the last one work with lazy evaluation?

The call by need interpreter.


You must log in first before submitting homework assignments.

Instructions on submitting homework is here


Last updated at 7:41 am on Friday, October 29, 2004.