previous | index | next

Utility Procedures

     (define look-up-value  ; from chapter 8
       (lambda (name)
	 (cond
	  ((equal? name '+) +)
	  ((equal? name '*) *)
	  ((equal? name '-) -)
	  ((equal? name '/) /)
	  (else
	    (error "Unrecognized name" name)))))

     (define operator?
       (lambda (token)
	 (member token '(+ - * /))))

     (define lower-precedence?
       (lambda (op-1 op-2)
	 (and (member op-1 '(+ -))
	      (member op-2 '(* /)))))
The tokenize procedure is described fully in the sidebar on pp. 433-34.

previous | index | next