バグいれとバグとり
id:propellaな山宮さんへのコメントにも書いたが、うすうすわかっていたのに当たり前のバグを入れてしまっていた。修正をまた送付。
インスタンス変数を追加してはいけないクラス
第一候補はVM(primitive)が知っているクラスたちということになりますが、それでも新しい変数を後ろに追加していったときは、通常は問題がないわけです。primitiveが既存のフィールドにアクセスするときに使うインデックスは変わりませんので。
BitBltに今回追加したときも、最初は後ろに追加するだけだしと思い、でもサブクラスがあったら困るよなとも思って一瞬調べたもののその道はたどらず、さっと追加しても生きているのでそのまま進んでしまったわけでした。それでも、WarpBltのインスタンス変数はインデックスが変わってしまい、p1xとかその辺を見ているprimitiveがいかれてしまったわけです。
primitiveが知っているクラス一覧、とかというものを作ればよいんですかね。必ずしも簡単ではないかもしれませんが。それでも必要以上に集まってしまうわけなので、後は目視と実験も必要です。
we
某所から以前、「著者が一人の論文なのに、一人称にweを使っている、という瑣末な査読コメントに業を煮やした某物理学者が、飼っていた猫の名前を共著者に加えそれが通った。その後みながその猫の名前を使い始め、しまいには猫が単独著者の論文まで発表された。」とかなんとかいう話を聞いたことがありました。
僕もご多分に漏れずC5のカメラレディを作っているのですが、単独著者なのにweを使っておいたら、そのようなコメントをいただきました。ここはどう対処するか悩みどころだ。
書き忘れたが、論文の性格上「読者と著者」という複数形が現れる場面がそれなりにある。それを一概に書き換えるのもどうかとはおもうわけだ。