C311 Assignment 2 -- Static Properties

Due Monday, January 23rd, at 9 AM

Finish reading EOPL Chapter 2.

Submit via email

  1. EOPL Exercise 2.3.1

    > (free-vars '((lambda (x) x) y))
    (y)
    > (bound-vars '((lambda (x) x) y))
    (x)
    > (free-vars '(lambda (x) (y (lambda (y) (y z)))))
    (y z)
    > (bound-vars '(lambda (x) (y (lambda (y) (y z)))))
    (y)
    
  2. EOPL Exercise 2.3.10

Try to find linear-time algorithms for these procedures. Hint: for each procedure, define an auxiliary procedure that takes an extra argument, which records information on the nature of lexically enclosing bindings.

chaynes@indiana.edu