scheme消息传递形式的系统构建
除前文介绍的通用型构建方式,数据导向的构建方式,本节介绍了新的消息传递风格的构建。
点击查看代码
(define (make-from-real-imag x y)
(define (dispatch op)
(cond ((eq? op 'real-part) x)
((eq? op 'imag-part) y)
((eq? op 'magnitude) (sqrt (+ (square x)(square y))))
((eq? op 'angle) (atan y x))
(else (error "unknown op" op)))))
(define (apply-generic op arg) (arg op))
点击查看代码
(define (make-from-mag-ang r a)
(define (dispatch op)
(cond ((eq? op 'real-part) (* r (cos a)))
((eq? op 'imag-part) (* r (sin a)))
((eq? op 'magnitude) r)
((eq? op 'angle) a)
(else (error "unknown op" op)))))

浙公网安备 33010602011771号