A Generic Operation

left top right

(define (distance node-or-leaf)
  (if (is-node? node-or-leaf)
      (node.distance node-or-leaf)
      (point.to-origin
        (leaf.point node-or-leaf))))

Jim Miller W3C