exercise 3.37

解答自体は簡単。注釈の部分が興味深い気がする。
まぁそれはさておきコード晒すか

(define (celsius-fahrenheit-converter x)      
  (c+ (c* (c/ (cv 9) (cv 5))                  
          x)                                  
      (cv 32)))                               
                                              
(define (c+ x y)                              
  (let ((z (make-connector)))                 
    (adder x y z)                             
    z))                                       
                                              
(define (c* x y)                              
  (let ((z (make-connector)))                 
    (multiplier x y z)                        
    z))                                       
                                              
(define (c- x y)                              
  (let ((z (make-connector)))                 
    (adder y z x)                             
    z))                                       
                                              
(define (c/ x y)                              
  (let ((z (make-connector)))                 
    (multiplier y z x)                        
    z))                                       
                                              
(define (cv x)                                
  (let ((z (make-connector)))                 
    (constant x z)                            
    z))   

(define C (make-connector))                   
(define F (celsius-fahrenheit-converter C))   
(probe 'C C)                                  
(probe 'F F)   

実行結果は

gosh> (set-value! C 25 'k0ncha)               
                                              
Probe: C = 25                                 
                                              
Probe: F = 77                                 
done  

しかしなんだ、constantの引数の順番をよく間違う。
せっかくeldocだかなんだか入れてるってのに。