21/07/09 21:10:41.98 Ft4/ScDj.net
Racketを使って、SICP 2nd Editionを読んでいます。
2章で画像を扱うセクションがあります。「SICP Picture Language」というのを使って読んでいます:
URLリンク(docs.racket-lang.org)
Exercise 2.49を読んでいて「painter」について疑問に思ったことがあります。
「A painter is represented as a procedure that, given a frame as argument, draws a particular image shifted and scaled to fit the frame.」
とSICP 2nd Editionに書かれています。
これを読むと、「painter」を使うときには、引数として「frame」を与えなければならないわけですが、「SICP Picture Language」では、pという「painter」を
描画するときに、
(paint p)
とするようです。つまり、pに「frame」を引数として渡せないようです。デフォルトで正規直交基底が「frame」として使われるようです。
「painter」に「frame」を渡して描画するにはどうすればいいのでしょうか?