以下が使用例です。
> (define (foo x) ;
(begin (write x) ; 引数の値を write
(newline) ;
(display x) ; 引数の値を write
(newline)
x)) ; 最後に引数の値を返す
> (foo 3)
3 ; write の場合
3 ; display の場合
3 ; 式の値の表示
> (foo "scheme")
"scheme" ; write の場合
scheme ; display の場合
"scheme" ; 式の値の表示
> (define (debug-print comment value) ; こういうのを一つ作っておくと便利
(begin (display comment) ; 値をコメント付きで表示し、
(display value)
(newline)
value)) ; その値を表示する
> (+ (* 7 6) (max 3 5) (min 3 5))
50
> (+ (debug-print "mul:" (* 7 6)) ; 途中の式の値が知りたければ
(debug-print "max:" (max 3 5)) ; debug-print で囲めばよい
(debug-print "min:" (min 3 5)))
mul:42
max:5
min:3
50
99.9.29/ Tomio KAMADA: kamada@cs.kobe-u.ac.jp