previous | index | next

Implementing Expression Trees

Constants (numbers) will simply be represented by themselves:
     (define make-constant
       (lambda (x) x))

     (define constant? number?)
An expression tree ADT:
     

     (define make-expr
       (lambda (left-operand operator right-operand)
         (list left-operand operator right-operand)))

     (define operator cadr)

     (define left-operand car)

     (define right-operand caddr)

previous | index | next