濃い多項式の問題について

ずーっとやってたんだが、うまく設計できない・・・多分今までやろうとしてたのは独自路線だったからかも。ちょっとメモしておくと、データの構成はこんな感じで考えてた。

薄い多項式(polynomial 変数 light (次元 係数) (次元 係数) ...)
濃い多項式(polynomial 変数 heavy 最高次元数 係数 係数 ...)
つまり、両方とも

(polynomial 変数 項リスト)
という構成までは同じで「項リスト」をlightとheavyで区別するという方針でやっていた。当然、項リストの表現を二通りに分離して、それぞれを扱うロジックを記述しようとしていたわけ。
当初これが一番機能の組み込みが簡単だろうと思っていたんだけど、書いてみたらおもいっきりツギハギ的なロジックになってしまうことがわかった。(その時点で美的センスが邪魔して立ち往生・・・)まあ概念的にスッキリ記述しようと思えばできるビジョンもなんとなくは見えてるんだけど、頭の中を整理するのにさらに時間が掛かってしまいそうな上、多分出題者が意図しているよりもはるかに面倒な修正になるような気がしてきた。


つーわけで方針変更する。

薄い多項式(polynomial light 変数 (次元 係数) (次元 係数) ...)
濃い多項式(polynomial heavy 変数 最高次元数 係数 係数 ...)
↑こう表現することにして、「多項式」レベルで区別しようと思う。
これは2.89の問題をもう一回ちゃんと書き直すことになるだろう。それからの方がおそらく解きやすい。(SICPの問題の導き方にはもはや全幅の信頼を寄せていいという境地に達したw)


年内に2章を終わらせたいなぁ。。