Comment detail
ファイル更新の監視 (Nested Flatten)同じ方針ですが、modifyされているときのアクションは純粋に副作用だけなので(printするだけ)、 (if 条件 (loop) (begin (action) (loop))) よりは (unless 条件 (action)) (loop) のように副作用だけくくり出してしてしまうのが好みですね (分岐が増えた場合でもloopは一箇所にまとめられるし)。たとえば:
1 2 3 4 5 6 7 | (define (modify-checker)
(let loop ((previous #f)
(modified (file-mtime filename)))
(when (and previous (not (= previous modified)))
(print "modified"))
(sys-sleep 3)
(loop modified (file-mtime filename))))
|
おお、キレイ! 勉強になります。ありがとうございます。 あと自分のでは、8行目と11行目の間に更新されると"modified!"の出力が一回少なくなってしまいますね。





es
#385()
[
Scheme
]
Rating0/0=0.00
Rating0/0=0.00-0+
1 reply [ reply ]